diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
new file mode 100644
index 00000000..f189893d
--- /dev/null
+++ b/.github/workflows/release.yml
@@ -0,0 +1,154 @@
+name: Release
+
+on:
+ push:
+ tags:
+ - 'v*'
+ workflow_dispatch:
+ inputs:
+ version:
+ description: 'Version tag (e.g. v0.25.3)'
+ required: true
+
+permissions:
+ contents: write
+
+env:
+ VERSION: ${{ inputs.version || github.ref_name }}
+
+jobs:
+ build:
+ strategy:
+ matrix:
+ include:
+ - platform: linux/amd64
+ runner: ubuntu-latest
+ suffix: amd64
+ - platform: linux/arm64
+ runner: ubuntu-24.04-arm
+ suffix: arm64
+ runs-on: ${{ matrix.runner }}
+ steps:
+ - name: Generate token
+ id: app-token
+ uses: actions/create-github-app-token@v1
+ with:
+ app-id: ${{ secrets.BUILD_APP_ID }}
+ private-key: ${{ secrets.BUILD_APP_PRIVATE_KEY }}
+ owner: ${{ github.repository_owner }}
+
+ - name: Checkout with submodules
+ uses: actions/checkout@v4
+ with:
+ submodules: recursive
+ token: ${{ steps.app-token.outputs.token }}
+
+ - name: Set up Docker Buildx
+ uses: docker/setup-buildx-action@v3
+
+ - name: Login to Docker Hub
+ uses: docker/login-action@v3
+ with:
+ username: ${{ secrets.DOCKERHUB_USERNAME }}
+ password: ${{ secrets.DOCKERHUB_TOKEN }}
+
+ - name: Build and push by digest
+ id: build
+ uses: docker/build-push-action@v6
+ with:
+ context: .
+ platforms: ${{ matrix.platform }}
+ outputs: type=image,name=docmost/docmost,push-by-digest=true,name-canonical=true,push=true
+ cache-from: type=gha,scope=${{ matrix.suffix }}
+ cache-to: type=gha,scope=${{ matrix.suffix }},mode=max
+
+ - name: Export digest
+ run: |
+ mkdir -p /tmp/digests
+ digest="${{ steps.build.outputs.digest }}"
+ touch "/tmp/digests/${digest#sha256:}"
+
+ - name: Upload digest
+ uses: actions/upload-artifact@v4
+ with:
+ name: digest-${{ matrix.suffix }}
+ path: /tmp/digests/*
+ if-no-files-found: error
+
+ - name: Strip v prefix
+ id: strip-v
+ run: echo "version=${VERSION#v}" >> "$GITHUB_OUTPUT"
+
+ - name: Export Docker image
+ uses: docker/build-push-action@v6
+ with:
+ context: .
+ platforms: ${{ matrix.platform }}
+ push: false
+ tags: |
+ docmost/docmost:latest
+ docmost/docmost:${{ steps.strip-v.outputs.version }}
+ outputs: type=docker,dest=docmost-${{ matrix.suffix }}.docker.tar
+ cache-from: type=gha,scope=${{ matrix.suffix }}
+
+ - name: Compress image
+ run: gzip docmost-${{ matrix.suffix }}.docker.tar
+
+ - name: Upload image archive
+ uses: actions/upload-artifact@v4
+ with:
+ name: docker-image-${{ matrix.suffix }}
+ path: docmost-${{ matrix.suffix }}.docker.tar.gz
+ if-no-files-found: error
+
+ release:
+ needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - name: Download digests
+ uses: actions/download-artifact@v4
+ with:
+ pattern: digest-*
+ path: /tmp/digests
+ merge-multiple: true
+
+ - name: Set up Docker Buildx
+ uses: docker/setup-buildx-action@v3
+
+ - name: Login to Docker Hub
+ uses: docker/login-action@v3
+ with:
+ username: ${{ secrets.DOCKERHUB_USERNAME }}
+ password: ${{ secrets.DOCKERHUB_TOKEN }}
+
+ - name: Extract metadata for tags
+ id: meta
+ uses: docker/metadata-action@v5
+ with:
+ images: docmost/docmost
+ tags: |
+ type=semver,pattern={{version}},value=${{ env.VERSION }}
+ type=semver,pattern={{major}}.{{minor}},value=${{ env.VERSION }},enable=${{ !contains(env.VERSION, '-') }}
+ type=raw,value=latest,enable=${{ !contains(env.VERSION, '-') }}
+
+ - name: Create manifest list and push
+ working-directory: /tmp/digests
+ run: |
+ docker buildx imagetools create $(jq -cr '.tags | map("-t " + .) | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \
+ $(printf 'docmost/docmost@sha256:%s ' *)
+
+ - name: Download image archives
+ uses: actions/download-artifact@v4
+ with:
+ pattern: docker-image-*
+ path: /tmp/images
+ merge-multiple: true
+
+ - name: Create GitHub Release
+ uses: softprops/action-gh-release@v2
+ with:
+ tag_name: ${{ env.VERSION }}
+ files: |
+ /tmp/images/docmost-amd64.docker.tar.gz
+ /tmp/images/docmost-arm64.docker.tar.gz
+ draft: true
diff --git a/apps/client/package.json b/apps/client/package.json
index 504f0f5f..4a079308 100644
--- a/apps/client/package.json
+++ b/apps/client/package.json
@@ -1,7 +1,7 @@
{
"name": "client",
"private": true,
- "version": "0.24.1",
+ "version": "0.70.1",
"scripts": {
"dev": "vite",
"build": "tsc && vite build",
@@ -14,18 +14,19 @@
"@docmost/editor-ext": "workspace:*",
"@emoji-mart/data": "^1.2.1",
"@emoji-mart/react": "^1.1.1",
- "@excalidraw/excalidraw": "0.18.0-c158187",
- "@mantine/core": "^8.3.12",
- "@mantine/dates": "^8.3.12",
- "@mantine/form": "^8.3.12",
- "@mantine/hooks": "^8.3.12",
- "@mantine/modals": "^8.3.12",
- "@mantine/notifications": "^8.3.12",
- "@mantine/spotlight": "^8.3.12",
+ "@excalidraw/excalidraw": "0.18.0-3a5ef40",
+ "@mantine/core": "^8.3.14",
+ "@mantine/dates": "^8.3.14",
+ "@mantine/form": "^8.3.14",
+ "@mantine/hooks": "^8.3.14",
+ "@mantine/modals": "^8.3.14",
+ "@mantine/notifications": "^8.3.14",
+ "@mantine/spotlight": "^8.3.14",
"@tabler/icons-react": "^3.36.1",
"@tanstack/react-query": "^5.90.17",
"alfaaz": "^1.1.0",
- "axios": "^1.13.2",
+ "axios": "^1.13.5",
+ "blueimp-load-image": "^5.16.0",
"clsx": "^2.1.1",
"emoji-mart": "^5.6.0",
"file-saver": "^2.0.5",
@@ -41,7 +42,7 @@
"mantine-form-zod-resolver": "^1.3.0",
"mermaid": "^11.12.2",
"mitt": "^3.0.1",
- "posthog-js": "^1.255.1",
+ "posthog-js": "1.345.5",
"react": "^18.3.1",
"react-arborist": "3.4.0",
"react-clear-modal": "^2.0.17",
@@ -54,11 +55,12 @@
"semver": "^7.7.3",
"socket.io-client": "^4.8.3",
"tiptap-extension-global-drag-handle": "^0.1.18",
- "zod": "^3.25.76"
+ "zod": "^4.3.6"
},
"devDependencies": {
"@eslint/js": "^9.16.0",
"@tanstack/eslint-plugin-query": "^5.62.1",
+ "@types/blueimp-load-image": "^5.16.0",
"@types/file-saver": "^2.0.7",
"@types/js-cookie": "^3.0.6",
"@types/katex": "^0.16.7",
@@ -66,7 +68,7 @@
"@types/react": "^18.3.12",
"@types/react-dom": "^18.3.1",
"@vitejs/plugin-react": "^5.1.1",
- "eslint": "^9.15.0",
+ "eslint": "^9.39.2",
"eslint-plugin-react": "^7.37.2",
"eslint-plugin-react-hooks": "^5.1.0",
"eslint-plugin-react-refresh": "^0.4.16",
diff --git a/apps/client/public/locales/de-DE/translation.json b/apps/client/public/locales/de-DE/translation.json
index 93c6f265..850374cd 100644
--- a/apps/client/public/locales/de-DE/translation.json
+++ b/apps/client/public/locales/de-DE/translation.json
@@ -41,7 +41,7 @@
"Date": "Datum",
"Delete": "Löschen",
"Delete group": "Gruppe löschen",
- "Are you sure you want to delete this page? This will delete its children and page history. This action is irreversible.": "Sind Sie sicher, dass Sie diese Seite löschen möchten? Dadurch werden ihre Unterseiten und die Seitengeschichte gelöscht. Diese Aktion ist unwiderruflich.",
+ "Are you sure you want to delete this page? This will delete its children and page history. This action is irreversible.": "Sind Sie sicher, dass Sie diese Seite löschen möchten? Dabei werden auch alle Unterseiten und der Seitenverlauf gelöscht. Diese Aktion kann nicht rückgängig gemacht werden.",
"Description": "Beschreibung",
"Details": "Details",
"e.g ACME": "z.B. ACME",
@@ -66,7 +66,7 @@
"Enter your new preferred email": "Geben Sie Ihre neue bevorzugte E-Mail ein",
"Enter your password": "Geben Sie Ihr Passwort ein",
"Error fetching page data.": "Fehler beim Abrufen der Seitendaten.",
- "Error loading page history.": "Fehler beim Laden der Seitengeschichte.",
+ "Error loading page history.": "Fehler beim Laden des Seitenverlaufs.",
"Export": "Exportieren",
"Failed to create page": "Erstellung der Seite fehlgeschlagen",
"Failed to delete page": "Löschen der Seite fehlgeschlagen",
@@ -114,20 +114,24 @@
"New page": "Neue Seite",
"New password": "Neues Passwort",
"No group found": "Keine Gruppe gefunden",
- "No page history saved yet.": "Es wurde noch keine Seitengeschichte gespeichert.",
+ "No page history saved yet.": "Es wurde noch kein Seitenverlauf gespeichert.",
"No pages yet": "Noch keine Seiten",
+ "No shared pages": "Keine freigegebenen Seiten",
"No results found...": "Keine Ergebnisse gefunden...",
"No user found": "Kein Benutzer gefunden",
"Overview": "Überblick",
"Owner": "Besitzer",
"page": "Seite",
"Page deleted successfully": "Seite erfolgreich gelöscht",
- "Page history": "Seitengeschichte",
+ "Page history": "Seitenverlauf",
+ "Select version": "Version auswählen",
+ "Highlight changes": "Änderungen hervorheben",
"Page import is in progress. Please do not close this tab.": "Der Seitenimport läuft. Bitte schließen Sie diesen Tab nicht.",
"Pages": "Seiten",
"pages": "Seiten",
"Password": "Passwort",
"Password changed successfully": "Passwort erfolgreich geändert",
+ "People": "Personen",
"Pending": "Ausstehend",
"Please confirm your action": "Bitte bestätigen Sie Ihre Aktion",
"Preferences": "Vorlieben",
@@ -205,6 +209,9 @@
"Reply...": "Antworten...",
"Error loading comments.": "Fehler beim Laden der Kommentare.",
"No comments yet.": "Noch keine Kommentare.",
+ "No open comments.": "Keine offenen Kommentare.",
+ "No resolved comments.": "Keine gelösten Kommentare.",
+ "Add a comment...": "Kommentar hinzufügen...",
"Edit comment": "Kommentar bearbeiten",
"Delete comment": "Kommentar löschen",
"Are you sure you want to delete this comment?": "Sind Sie sicher, dass Sie diesen Kommentar löschen möchten?",
@@ -226,7 +233,6 @@
"Are you sure you want to unresolve this comment thread?": "Sind Sie sicher, dass Sie diesen Kommentarthread nicht lösen möchten?",
"Resolved": "Gelöst",
"No active comments.": "Keine aktiven Kommentare.",
- "No resolved comments.": "Keine gelösten Kommentare.",
"Revoke invitation": "Einladung widerrufen",
"Revoke": "Widerrufen",
"Don't": "Nicht",
@@ -272,6 +278,7 @@
"Add row below": "Zeile unten hinzufügen",
"Delete table": "Tabelle löschen",
"Info": "Info",
+ "Note": "Hinweis",
"Success": "Erfolg",
"Warning": "Warnung",
"Danger": "Gefahr",
@@ -353,9 +360,23 @@
"Insert current date": "Aktuelles Datum einfügen",
"Draw and sketch excalidraw diagrams": "Excalidraw-Diagramme zeichnen und skizzieren",
"Multiple": "Mehrere",
+ "Turn into": "In verwandeln",
+ "Text align": "Text ausrichten",
+ "This page may have been deleted, moved, or you may not have access.": "\"Diese Seite wurde möglicherweise gelöscht, verschoben oder Sie haben keinen Zugriff darauf.\"",
+ "Go to homepage": "Zur Startseite",
+ "Pages you create will show up here.": "\"Die von Ihnen erstellten Seiten werden hier angezeigt.\"",
"Heading {{level}}": "Überschrift {{level}}",
"Toggle title": "Titel umschalten",
"Write anything. Enter \"/\" for commands": "Schreiben Sie irgendetwas. Geben Sie \"/\" für Befehle ein",
+ "Write...": "\"Schreiben...\"",
+ "Column count": "Spaltenanzahl",
+ "{{count}} Columns": "{count, plural, one {# Spalte} other {# Spalten}}",
+ "Equal columns": "Gleich breite Spalten",
+ "Left sidebar": "Linke Seitenleiste",
+ "Right sidebar": "Rechte Seitenleiste",
+ "Wide center": "Breiter Mittelbereich",
+ "Left wide": "Breiter linker Bereich",
+ "Right wide": "Breiter rechter Bereich",
"Names do not match": "Namen stimmen nicht überein",
"Today, {{time}}": "Heute, {{time}}",
"Yesterday, {{time}}": "Gestern, {{time}}",
@@ -378,6 +399,13 @@
"Delete member": "Mitglied löschen",
"Member deleted successfully": "Mitglied erfolgreich gelöscht",
"Are you sure you want to delete this workspace member? This action is irreversible.": "Sind Sie sicher, dass Sie dieses Arbeitsbereichsmitglied löschen möchten? Diese Aktion ist unwiderruflich.",
+ "Deactivate member": "Mitglied deaktivieren",
+ "Activate member": "Mitglied aktivieren",
+ "Are you sure you want to deactivate this workspace member? They will no longer be able to access this workspace.": "Sind Sie sicher, dass Sie dieses Mitglied des Arbeitsbereichs deaktivieren möchten? Dieses Mitglied kann danach nicht mehr auf diesen Arbeitsbereich zugreifen.",
+ "Are you sure you want to activate this workspace member?": "Sind Sie sicher, dass Sie dieses Mitglied des Arbeitsbereichs aktivieren möchten?",
+ "Deactivate": "Deaktivieren",
+ "Activate": "Aktivieren",
+ "Deactivated": "Deaktiviert",
"Move": "Verschieben",
"Move page": "Seite verschieben",
"Move page to a different space.": "Seite in einen anderen Bereich verschieben.",
@@ -405,6 +433,23 @@
"Share deleted successfully": "Freigabe erfolgreich gelöscht",
"Share not found": "Freigabe nicht gefunden",
"Failed to share page": "Fehler beim Teilen der Seite",
+ "Disable public sharing": "Öffentliches Teilen deaktivieren",
+ "Prevent members from sharing pages publicly.": "Verhindern Sie, dass Mitglieder Seiten öffentlich teilen.",
+ "Toggle public sharing": "Öffentliches Teilen umschalten",
+ "Toggle space public sharing": "Öffentliches Teilen im Bereich umschalten",
+ "Public sharing is disabled at the workspace level": "Öffentliches Teilen ist auf der Arbeitsbereichsebene deaktiviert",
+ "Prevent pages in this space from being shared publicly.": "Verhindern Sie, dass Seiten in diesem Bereich öffentlich geteilt werden.",
+ "Requires an enterprise license": "Erfordert eine Unternehmenslizenz",
+ "Page permissions": "Seitenberechtigungen",
+ "Control who can view and edit individual pages. Available with an enterprise license.": "Steuern Sie, wer einzelne Seiten ansehen und bearbeiten kann. Verfügbar mit einer Enterprise-Lizenz.",
+ "Enable public sharing": "Öffentliches Teilen aktivieren",
+ "Are you sure you want to enable public sharing? Members will be able to share pages publicly.": "Sind Sie sicher, dass Sie das öffentliche Teilen aktivieren möchten? Mitglieder können Seiten öffentlich teilen.",
+ "Are you sure you want to disable public sharing? All existing shared links in this workspace will be deleted.": "Sind Sie sicher, dass Sie das öffentliche Teilen deaktivieren möchten? Alle bestehenden Freigabelinks in diesem Arbeitsbereich werden gelöscht.",
+ "Are you sure you want to enable public sharing for this space?": "Sind Sie sicher, dass Sie das öffentliche Teilen für diesen Bereich aktivieren möchten?",
+ "Are you sure you want to disable public sharing? All existing shared links in this space will be deleted.": "Sind Sie sicher, dass Sie das öffentliche Teilen deaktivieren möchten? Alle bestehenden Freigabelinks in diesem Bereich werden gelöscht.",
+ "Public sharing is disabled": "Öffentliches Teilen ist deaktiviert",
+ "Public sharing has been disabled at the workspace level.": "Das öffentliche Teilen wurde auf der Arbeitsbereichsebene deaktiviert.",
+ "Public sharing has been disabled for this space.": "Das öffentliche Teilen wurde für diesen Bereich deaktiviert.",
"Copy page": "Seite kopieren",
"Copy page to a different space.": "Seite in einen anderen Bereich kopieren.",
"Page copied successfully": "Seite erfolgreich kopiert",
@@ -487,7 +532,7 @@
"Enter one of your backup codes. Each backup code can only be used once.": "Geben Sie einen Ihrer Sicherungscodes ein. Jeder Sicherungscode kann nur einmal verwendet werden.",
"Verify": "Überprüfen",
"Trash": "Papierkorb",
- "Pages in trash will be permanently deleted after 30 days.": "Seiten im Papierkorb werden nach 30 Tagen endgültig gelöscht.",
+ "Pages in trash will be permanently deleted after {{count}} days.": "Seiten im Papierkorb werden nach {{count}} Tagen endgültig gelöscht.",
"Deleted": "Gelöscht",
"No pages in trash": "Keine Seiten im Papierkorb",
"Permanently delete page?": "Seite endgültig löschen?",
@@ -559,19 +604,94 @@
"This action cannot be undone. Any applications using this API key will stop working.": "Diese Aktion kann nicht rückgängig gemacht werden. Alle Anwendungen, die diesen API-Schlüssel verwenden, werden nicht mehr funktionieren.",
"Update API key": "API-Schlüssel aktualisieren",
"Manage API keys for all users in the workspace": "Verwalten Sie API-Schlüssel für alle Benutzer im Arbeitsbereich",
+ "Restrict API key creation to admins": "API-Schlüsselerstellung auf Administratoren beschränken",
+ "Only admins and owners can create new API keys. Existing member keys will continue to work.": "Nur Administratoren und Eigentümer können neue API-Schlüssel erstellen. Bestehende Mitgliederschlüssel funktionieren weiterhin.",
+ "Toggle restrict API keys to admins": "Beschränkung der API-Schlüssel auf Administratoren umschalten",
+ "API key creation is restricted to admins by your workspace administrator.": "Die Erstellung von API-Schlüsseln ist durch Ihren Workspace-Administrator auf Administratoren beschränkt.",
"AI settings": "KI-Einstellungen",
"AI search": "KI-Suche",
"AI Answer": "KI-Antwort",
"Ask AI": "KI fragen",
"AI is thinking...": "Die KI überlegt...",
"Ask a question...": "Fragen stellen...",
- "AI-powered search (Ask AI)": "KI-gestützte Suche (KI fragen)",
+ "AI Answers": "KI-Antworten",
+ "AI-powered search (AI Answers)": "KI-unterstützte Suche (KI-Antworten)",
"AI search uses vector embeddings to provide semantic search capabilities across your workspace content.": "Die KI-Suche verwendet Vektor-Einbettungen, um semantische Suchfunktionen in Ihrem Arbeitsbereich bereitzustellen.",
"Toggle AI search": "KI-Suche umschalten",
+ "Generative AI (Ask AI)": "Generative KI (KI fragen)",
+ "Enable AI-powered content generation in the editor. Allows users to generate, improve, translate and transform text.": "Aktivieren Sie die KI-unterstützte Inhaltserstellung im Editor. Ermöglicht Benutzern das Erzeugen, Verbessern, Übersetzen und Transformieren von Text.",
+ "Toggle generative AI": "Generative KI umschalten",
+ "Enterprise feature": "Enterprise-Funktion",
+ "AI is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "KI ist nur in der Docmost Enterprise-Edition verfügbar. Kontaktieren Sie sales@docmost.com.",
+ "AI & MCP": "KI & MCP",
+ "AI": "KI",
+ "MCP": "MCP",
+ "Model Context Protocol (MCP)": "Model Context Protocol (MCP)",
+ "Enable the MCP server to allow AI assistants and tools to interact with your workspace content.": "Aktivieren Sie den MCP-Server, damit KI-Assistenten und -Tools mit den Inhalten Ihres Arbeitsbereichs interagieren können.",
+ "MCP is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "MCP ist nur in der Docmost Enterprise-Edition verfügbar. Kontaktieren Sie sales@docmost.com.",
+ "MCP documentation": "MCP-Dokumentation",
+ "MCP Server URL": "MCP-Server-URL",
+ "Use your API key for authentication. You can manage API keys in your account settings.": "Verwenden Sie Ihren API-Schlüssel zur Authentifizierung. API-Schlüssel können in Ihren Kontoeinstellungen verwaltet werden.",
+ "Supported tools": "Unterstützte Tools",
+ "Your workspace has MCP enabled. Use your API key to connect AI assistants.": "In Ihrem Arbeitsbereich ist MCP aktiviert. Verwenden Sie Ihren API-Schlüssel, um KI-Assistenten anzubinden.",
+ "MCP server URL:": "MCP-Server-URL:",
+ "Learn more": "Mehr erfahren",
+ "View the": "Anzeigen",
+ "for usage details.": "für Informationen zur Nutzung.",
+ "for setup instructions.": "für Einrichtungshinweise.",
+ "API documentation": "API-Dokumentation",
"Sources": "Quellen",
- "Ask AI not available for attachments": "KI fragen nicht für Anhänge verfügbar",
+ "AI Answers not available for attachments": "KI-Antworten sind für Anhänge nicht verfügbar",
"No answer available": "Keine Antwort verfügbar",
"Background color": "Hintergrundfarbe",
"Highlight color": "Hervorhebungsfarbe",
- "Remove color": "Farbe entfernen"
+ "Remove color": "Farbe entfernen",
+ "Notifications": "Benachrichtigungen",
+ "No notifications": "Keine Benachrichtigungen",
+ "No unread notifications": "Keine ungelesenen Benachrichtigungen",
+ "All notifications": "Alle Benachrichtigungen",
+ "Unread only": "Nur ungelesen",
+ "Mark all as read": "Alle als gelesen markieren",
+ "Mark as read": "Als gelesen markieren",
+ "More options": "Weitere Optionen",
+ "mentioned you in a comment": "hat Sie in einem Kommentar erwähnt",
+ "commented on a page": "hat auf einer Seite kommentiert",
+ "resolved a comment": "hat einen Kommentar gelöst",
+ "mentioned you on a page": "hat Sie auf einer Seite erwähnt",
+ "gave you edit access to a page": "hat Ihnen Bearbeitungsrechte für eine Seite gegeben",
+ "gave you view access to a page": "hat Ihnen Leserechte für eine Seite gewährt",
+ "Today": "Heute",
+ "Yesterday": "Gestern",
+ "This week": "Diese Woche",
+ "Older": "Älter",
+ "Restricted page": "Eingeschränkte Seite",
+ "Restricted pages cannot be shared publicly.": "Eingeschränkte Seiten können nicht öffentlich geteilt werden.",
+ "Restricted by parent": "Eingeschränkt durch die übergeordnete Seite",
+ "Restricted": "Eingeschränkt",
+ "Open": "Offen",
+ "Inherits restrictions from ancestor page": "Erbt Einschränkungen von einer übergeordneten Seite",
+ "Only people listed below can access this page": "Nur die unten aufgeführten Personen können auf diese Seite zugreifen.",
+ "Everyone in this space can access": "Jeder in diesem Bereich kann darauf zugreifen.",
+ "No additional restrictions on this page": "Keine zusätzlichen Einschränkungen auf dieser Seite",
+ "Only specific people can access": "Nur bestimmte Personen können zugreifen",
+ "Use only inherited restrictions": "Nur geerbte Einschränkungen verwenden",
+ "Add restrictions on top of inherited": "Einschränkungen zusätzlich zu den geerbten hinzufügen",
+ "Inherited restriction": "Geerbte Einschränkung",
+ "Access limited by": "Zugriff beschränkt durch",
+ "Restrict access to control who can view and edit this page": "Beschränken Sie den Zugriff, um festzulegen, wer diese Seite ansehen und bearbeiten kann.",
+ "Add additional restrictions specific to this page": "Fügen Sie zusätzliche, für diese Seite spezifische Einschränkungen hinzu.",
+ "Access": "Zugriff",
+ "People with access": "Personen mit Zugriff",
+ "Remove all": "Alle entfernen",
+ "Remove access": "Zugriff entfernen",
+ "Remove all access": "Alle Zugriffsrechte entfernen",
+ "Are you sure you want to remove this member's access to the page?": "Sind Sie sicher, dass Sie den Zugriff dieses Mitglieds auf die Seite entfernen möchten?",
+ "Are you sure you want to remove all specific access? This will make the page open to everyone in the space.": "Sind Sie sicher, dass Sie alle spezifischen Zugriffsrechte entfernen möchten? Dadurch wird die Seite für alle in diesem Bereich zugänglich.",
+ "Trash retention": "Aufbewahrungsdauer des Papierkorbs",
+ "Pages in trash will be permanently deleted after this period.": "Seiten im Papierkorb werden nach Ablauf dieses Zeitraums endgültig gelöscht.",
+ "Trash retention updated": "Aufbewahrungsdauer des Papierkorbs aktualisiert",
+ "Failed to update trash retention": "Aktualisierung der Aufbewahrungsdauer des Papierkorbs fehlgeschlagen",
+ "Removed page restriction": "Seitenbeschränkung entfernt",
+ "Added page permission": "Seitenberechtigung hinzugefügt",
+ "Removed page permission": "Seitenberechtigung entfernt"
}
diff --git a/apps/client/public/locales/en-US/translation.json b/apps/client/public/locales/en-US/translation.json
index c0578d2b..cd2b7559 100644
--- a/apps/client/public/locales/en-US/translation.json
+++ b/apps/client/public/locales/en-US/translation.json
@@ -116,6 +116,7 @@
"No group found": "No group found",
"No page history saved yet.": "No page history saved yet.",
"No pages yet": "No pages yet",
+ "No shared pages": "No shared pages",
"No results found...": "No results found...",
"No user found": "No user found",
"Overview": "Overview",
@@ -123,11 +124,14 @@
"page": "page",
"Page deleted successfully": "Page deleted successfully",
"Page history": "Page history",
+ "Select version": "Select version",
+ "Highlight changes": "Highlight changes",
"Page import is in progress. Please do not close this tab.": "Page import is in progress. Please do not close this tab.",
"Pages": "Pages",
"pages": "pages",
"Password": "Password",
"Password changed successfully": "Password changed successfully",
+ "People": "People",
"Pending": "Pending",
"Please confirm your action": "Please confirm your action",
"Preferences": "Preferences",
@@ -205,6 +209,9 @@
"Reply...": "Reply...",
"Error loading comments.": "Error loading comments.",
"No comments yet.": "No comments yet.",
+ "No open comments.": "No open comments.",
+ "No resolved comments.": "No resolved comments.",
+ "Add a comment...": "Add a comment...",
"Edit comment": "Edit comment",
"Delete comment": "Delete comment",
"Are you sure you want to delete this comment?": "Are you sure you want to delete this comment?",
@@ -226,7 +233,6 @@
"Are you sure you want to unresolve this comment thread?": "Are you sure you want to unresolve this comment thread?",
"Resolved": "Resolved",
"No active comments.": "No active comments.",
- "No resolved comments.": "No resolved comments.",
"Revoke invitation": "Revoke invitation",
"Revoke": "Revoke",
"Don't": "Don't",
@@ -272,6 +278,7 @@
"Add row below": "Add row below",
"Delete table": "Delete table",
"Info": "Info",
+ "Note": "Note",
"Success": "Success",
"Warning": "Warning",
"Danger": "Danger",
@@ -353,9 +360,23 @@
"Insert current date": "Insert current date",
"Draw and sketch excalidraw diagrams": "Draw and sketch excalidraw diagrams",
"Multiple": "Multiple",
+ "Turn into": "Turn into",
+ "Text align": "Text align",
+ "This page may have been deleted, moved, or you may not have access.": "This page may have been deleted, moved, or you may not have access.",
+ "Go to homepage": "Go to homepage",
+ "Pages you create will show up here.": "Pages you create will show up here.",
"Heading {{level}}": "Heading {{level}}",
"Toggle title": "Toggle title",
"Write anything. Enter \"/\" for commands": "Write anything. Enter \"/\" for commands",
+ "Write...": "Write...",
+ "Column count": "Column count",
+ "{{count}} Columns": "{{count}} Columns",
+ "Equal columns": "Equal columns",
+ "Left sidebar": "Left sidebar",
+ "Right sidebar": "Right sidebar",
+ "Wide center": "Wide center",
+ "Left wide": "Left wide",
+ "Right wide": "Right wide",
"Names do not match": "Names do not match",
"Today, {{time}}": "Today, {{time}}",
"Yesterday, {{time}}": "Yesterday, {{time}}",
@@ -378,6 +399,13 @@
"Delete member": "Delete member",
"Member deleted successfully": "Member deleted successfully",
"Are you sure you want to delete this workspace member? This action is irreversible.": "Are you sure you want to delete this workspace member? This action is irreversible.",
+ "Deactivate member": "Deactivate member",
+ "Activate member": "Activate member",
+ "Are you sure you want to deactivate this workspace member? They will no longer be able to access this workspace.": "Are you sure you want to deactivate this workspace member? They will no longer be able to access this workspace.",
+ "Are you sure you want to activate this workspace member?": "Are you sure you want to activate this workspace member?",
+ "Deactivate": "Deactivate",
+ "Activate": "Activate",
+ "Deactivated": "Deactivated",
"Move": "Move",
"Move page": "Move page",
"Move page to a different space.": "Move page to a different space.",
@@ -405,6 +433,23 @@
"Share deleted successfully": "Share deleted successfully",
"Share not found": "Share not found",
"Failed to share page": "Failed to share page",
+ "Disable public sharing": "Disable public sharing",
+ "Prevent members from sharing pages publicly.": "Prevent members from sharing pages publicly.",
+ "Toggle public sharing": "Toggle public sharing",
+ "Toggle space public sharing": "Toggle space public sharing",
+ "Public sharing is disabled at the workspace level": "Public sharing is disabled at the workspace level",
+ "Prevent pages in this space from being shared publicly.": "Prevent pages in this space from being shared publicly.",
+ "Requires an enterprise license": "Requires an enterprise license",
+ "Page permissions": "Page permissions",
+ "Control who can view and edit individual pages. Available with an enterprise license.": "Control who can view and edit individual pages. Available with an enterprise license.",
+ "Enable public sharing": "Enable public sharing",
+ "Are you sure you want to enable public sharing? Members will be able to share pages publicly.": "Are you sure you want to enable public sharing? Members will be able to share pages publicly.",
+ "Are you sure you want to disable public sharing? All existing shared links in this workspace will be deleted.": "Are you sure you want to disable public sharing? All existing shared links in this workspace will be deleted.",
+ "Are you sure you want to enable public sharing for this space?": "Are you sure you want to enable public sharing for this space?",
+ "Are you sure you want to disable public sharing? All existing shared links in this space will be deleted.": "Are you sure you want to disable public sharing? All existing shared links in this space will be deleted.",
+ "Public sharing is disabled": "Public sharing is disabled",
+ "Public sharing has been disabled at the workspace level.": "Public sharing has been disabled at the workspace level.",
+ "Public sharing has been disabled for this space.": "Public sharing has been disabled for this space.",
"Copy page": "Copy page",
"Copy page to a different space.": "Copy page to a different space.",
"Page copied successfully": "Page copied successfully",
@@ -487,7 +532,7 @@
"Enter one of your backup codes. Each backup code can only be used once.": "Enter one of your backup codes. Each backup code can only be used once.",
"Verify": "Verify",
"Trash": "Trash",
- "Pages in trash will be permanently deleted after 30 days.": "Pages in trash will be permanently deleted after 30 days.",
+ "Pages in trash will be permanently deleted after {{count}} days.": "Pages in trash will be permanently deleted after {{count}} days.",
"Deleted": "Deleted",
"No pages in trash": "No pages in trash",
"Permanently delete page?": "Permanently delete page?",
@@ -559,19 +604,94 @@
"This action cannot be undone. Any applications using this API key will stop working.": "This action cannot be undone. Any applications using this API key will stop working.",
"Update API key": "Update API key",
"Manage API keys for all users in the workspace": "Manage API keys for all users in the workspace",
+ "Restrict API key creation to admins": "Restrict API key creation to admins",
+ "Only admins and owners can create new API keys. Existing member keys will continue to work.": "Only admins and owners can create new API keys. Existing member keys will continue to work.",
+ "Toggle restrict API keys to admins": "Toggle restrict API keys to admins",
+ "API key creation is restricted to admins by your workspace administrator.": "API key creation is restricted to admins by your workspace administrator.",
"AI settings": "AI settings",
"AI search": "AI search",
"AI Answer": "AI Answer",
"Ask AI": "Ask AI",
"AI is thinking...": "AI is thinking...",
"Ask a question...": "Ask a question...",
- "AI-powered search (Ask AI)": "AI-powered search (Ask AI)",
+ "AI Answers": "AI Answers",
+ "AI-powered search (AI Answers)": "AI-powered search (AI Answers)",
"AI search uses vector embeddings to provide semantic search capabilities across your workspace content.": "AI search uses vector embeddings to provide semantic search capabilities across your workspace content.",
"Toggle AI search": "Toggle AI search",
+ "Generative AI (Ask AI)": "Generative AI (Ask AI)",
+ "Enable AI-powered content generation in the editor. Allows users to generate, improve, translate and transform text.": "Enable AI-powered content generation in the editor. Allows users to generate, improve, translate and transform text.",
+ "Toggle generative AI": "Toggle generative AI",
+ "Enterprise feature": "Enterprise feature",
+ "AI is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "AI is only available in the Docmost enterprise edition. Contact sales@docmost.com.",
+ "AI & MCP": "AI & MCP",
+ "AI": "AI",
+ "MCP": "MCP",
+ "Model Context Protocol (MCP)": "Model Context Protocol (MCP)",
+ "Enable the MCP server to allow AI assistants and tools to interact with your workspace content.": "Enable the MCP server to allow AI assistants and tools to interact with your workspace content.",
+ "MCP is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "MCP is only available in the Docmost enterprise edition. Contact sales@docmost.com.",
+ "MCP documentation": "MCP documentation",
+ "MCP Server URL": "MCP Server URL",
+ "Use your API key for authentication. You can manage API keys in your account settings.": "Use your API key for authentication. You can manage API keys in your account settings.",
+ "Supported tools": "Supported tools",
+ "Your workspace has MCP enabled. Use your API key to connect AI assistants.": "Your workspace has MCP enabled. Use your API key to connect AI assistants.",
+ "MCP server URL:": "MCP server URL:",
+ "Learn more": "Learn more",
+ "View the": "View the",
+ "for usage details.": "for usage details.",
+ "for setup instructions.": "for setup instructions.",
+ "API documentation": "API documentation",
"Sources": "Sources",
- "Ask AI not available for attachments": "Ask AI not available for attachments",
+ "AI Answers not available for attachments": "AI Answers not available for attachments",
"No answer available": "No answer available",
"Background color": "Background color",
"Highlight color": "Highlight color",
- "Remove color": "Remove color"
+ "Remove color": "Remove color",
+ "Notifications": "Notifications",
+ "No notifications": "No notifications",
+ "No unread notifications": "No unread notifications",
+ "All notifications": "All notifications",
+ "Unread only": "Unread only",
+ "Mark all as read": "Mark all as read",
+ "Mark as read": "Mark as read",
+ "More options": "More options",
+ "mentioned you in a comment": "mentioned you in a comment",
+ "commented on a page": "commented on a page",
+ "resolved a comment": "resolved a comment",
+ "mentioned you on a page": "mentioned you on a page",
+ "gave you edit access to a page": "gave you edit access to a page",
+ "gave you view access to a page": "gave you view access to a page",
+ "Today": "Today",
+ "Yesterday": "Yesterday",
+ "This week": "This week",
+ "Older": "Older",
+ "Restricted page": "Restricted page",
+ "Restricted pages cannot be shared publicly.": "Restricted pages cannot be shared publicly.",
+ "Restricted by parent": "Restricted by parent",
+ "Restricted": "Restricted",
+ "Open": "Open",
+ "Inherits restrictions from ancestor page": "Inherits restrictions from ancestor page",
+ "Only people listed below can access this page": "Only people listed below can access this page",
+ "Everyone in this space can access": "Everyone in this space can access",
+ "No additional restrictions on this page": "No additional restrictions on this page",
+ "Only specific people can access": "Only specific people can access",
+ "Use only inherited restrictions": "Use only inherited restrictions",
+ "Add restrictions on top of inherited": "Add restrictions on top of inherited",
+ "Inherited restriction": "Inherited restriction",
+ "Access limited by": "Access limited by",
+ "Restrict access to control who can view and edit this page": "Restrict access to control who can view and edit this page",
+ "Add additional restrictions specific to this page": "Add additional restrictions specific to this page",
+ "Access": "Access",
+ "People with access": "People with access",
+ "Remove all": "Remove all",
+ "Remove access": "Remove access",
+ "Remove all access": "Remove all access",
+ "Are you sure you want to remove this member's access to the page?": "Are you sure you want to remove this member's access to the page?",
+ "Are you sure you want to remove all specific access? This will make the page open to everyone in the space.": "Are you sure you want to remove all specific access? This will make the page open to everyone in the space.",
+ "Trash retention": "Trash retention",
+ "Pages in trash will be permanently deleted after this period.": "Pages in trash will be permanently deleted after this period.",
+ "Trash retention updated": "Trash retention updated",
+ "Failed to update trash retention": "Failed to update trash retention",
+ "Removed page restriction": "Removed page restriction",
+ "Added page permission": "Added page permission",
+ "Removed page permission": "Removed page permission"
}
diff --git a/apps/client/public/locales/es-ES/translation.json b/apps/client/public/locales/es-ES/translation.json
index af02c493..875ba3f4 100644
--- a/apps/client/public/locales/es-ES/translation.json
+++ b/apps/client/public/locales/es-ES/translation.json
@@ -116,6 +116,7 @@
"No group found": "No se encontró grupo",
"No page history saved yet.": "No hay historial de la página guardado aún.",
"No pages yet": "No hay páginas todavía",
+ "No shared pages": "No hay páginas compartidas",
"No results found...": "No se encontraron resultados...",
"No user found": "No se encontró usuario",
"Overview": "Visión general",
@@ -123,11 +124,14 @@
"page": "página",
"Page deleted successfully": "Página eliminada con éxito",
"Page history": "Historial de la página",
+ "Select version": "Seleccionar versión",
+ "Highlight changes": "Resaltar cambios",
"Page import is in progress. Please do not close this tab.": "La importación de la página está en curso. Por favor, no cierre esta pestaña.",
"Pages": "Páginas",
"pages": "páginas",
"Password": "Contraseña",
"Password changed successfully": "Contraseña cambiada con éxito",
+ "People": "Personas",
"Pending": "Pendiente",
"Please confirm your action": "Por favor, confirme su acción",
"Preferences": "Preferencias",
@@ -205,6 +209,9 @@
"Reply...": "Responder...",
"Error loading comments.": "Error al cargar comentarios.",
"No comments yet.": "No hay comentarios todavía.",
+ "No open comments.": "No hay comentarios abiertos.",
+ "No resolved comments.": "No hay comentarios resueltos.",
+ "Add a comment...": "Agregar un comentario...",
"Edit comment": "Editar comentario",
"Delete comment": "Eliminar comentario",
"Are you sure you want to delete this comment?": "¿Está seguro de que desea eliminar este comentario?",
@@ -226,7 +233,6 @@
"Are you sure you want to unresolve this comment thread?": "¿Está seguro de que desea no resolver este hilo de comentarios?",
"Resolved": "Resuelto",
"No active comments.": "No hay comentarios activos.",
- "No resolved comments.": "No hay comentarios resueltos.",
"Revoke invitation": "Revocar invitación",
"Revoke": "Revocar",
"Don't": "No",
@@ -272,6 +278,7 @@
"Add row below": "Agregar fila debajo",
"Delete table": "Eliminar tabla",
"Info": "Información",
+ "Note": "Nota",
"Success": "Satisfactorio",
"Warning": "Advertencia",
"Danger": "Peligro",
@@ -353,9 +360,23 @@
"Insert current date": "Insertar fecha actual",
"Draw and sketch excalidraw diagrams": "Dibujar y esbozar diagramas de Excalidraw",
"Multiple": "Múltiple",
+ "Turn into": "Convertir en",
+ "Text align": "Alineación del texto",
+ "This page may have been deleted, moved, or you may not have access.": "Es posible que esta página haya sido eliminada, movida o que no tengas acceso.",
+ "Go to homepage": "Ir a la página principal",
+ "Pages you create will show up here.": "Las páginas que crees aparecerán aquí.",
"Heading {{level}}": "Encabezado {{level}}",
"Toggle title": "Alternar título",
"Write anything. Enter \"/\" for commands": "Escribe cualquier cosa. Ingresa \"/\" para comandos",
+ "Write...": "Escribe...",
+ "Column count": "Número de columnas",
+ "{{count}} Columns": "{count, plural, one {# columna} other {# columnas}}",
+ "Equal columns": "Columnas iguales",
+ "Left sidebar": "Barra lateral izquierda",
+ "Right sidebar": "Barra lateral derecha",
+ "Wide center": "Centro ancho",
+ "Left wide": "Izquierda ancha",
+ "Right wide": "Derecha ancha",
"Names do not match": "Los nombres no coinciden",
"Today, {{time}}": "Hoy, {{time}}",
"Yesterday, {{time}}": "Ayer, {{time}}",
@@ -378,6 +399,13 @@
"Delete member": "Eliminar miembro",
"Member deleted successfully": "Miembro eliminado con éxito",
"Are you sure you want to delete this workspace member? This action is irreversible.": "¿Está seguro que desea eliminar este miembro del área de trabajo? Esta acción es irreversible.",
+ "Deactivate member": "Desactivar miembro",
+ "Activate member": "Activar miembro",
+ "Are you sure you want to deactivate this workspace member? They will no longer be able to access this workspace.": "¿Está seguro de que desea desactivar a este miembro del espacio de trabajo? Ya no podrá acceder a este espacio de trabajo.",
+ "Are you sure you want to activate this workspace member?": "¿Está seguro de que desea activar a este miembro del espacio de trabajo?",
+ "Deactivate": "Desactivar",
+ "Activate": "Activar",
+ "Deactivated": "Desactivado",
"Move": "Mover",
"Move page": "Mover página",
"Move page to a different space.": "Mover página a un espacio diferente.",
@@ -405,6 +433,23 @@
"Share deleted successfully": "Compartición eliminada con éxito",
"Share not found": "Compartición no encontrada",
"Failed to share page": "Error al compartir la página",
+ "Disable public sharing": "Desactivar el uso compartido público",
+ "Prevent members from sharing pages publicly.": "Evitar que los miembros compartan páginas públicamente.",
+ "Toggle public sharing": "Alternar el uso compartido público",
+ "Toggle space public sharing": "Alternar el uso compartido público del espacio",
+ "Public sharing is disabled at the workspace level": "El uso compartido público está desactivado a nivel de espacio de trabajo",
+ "Prevent pages in this space from being shared publicly.": "Evitar que las páginas en este espacio se compartan públicamente.",
+ "Requires an enterprise license": "Requiere una licencia empresarial",
+ "Page permissions": "Permisos de la página},{",
+ "Control who can view and edit individual pages. Available with an enterprise license.": "Controla quién puede ver y editar páginas individuales. Disponible con una licencia empresarial.",
+ "Enable public sharing": "Activar el uso compartido público",
+ "Are you sure you want to enable public sharing? Members will be able to share pages publicly.": "¿Está seguro de que desea activar el uso compartido público? Los miembros podrán compartir páginas públicamente.",
+ "Are you sure you want to disable public sharing? All existing shared links in this workspace will be deleted.": "¿Está seguro de que desea desactivar el uso compartido público? Todos los enlaces compartidos existentes en este espacio de trabajo se eliminarán.",
+ "Are you sure you want to enable public sharing for this space?": "¿Está seguro de que desea activar el uso compartido público para este espacio?",
+ "Are you sure you want to disable public sharing? All existing shared links in this space will be deleted.": "¿Está seguro de que desea desactivar el uso compartido público? Todos los enlaces compartidos existentes en este espacio se eliminarán.",
+ "Public sharing is disabled": "El uso compartido público está desactivado",
+ "Public sharing has been disabled at the workspace level.": "El uso compartido público se ha desactivado a nivel de espacio de trabajo.",
+ "Public sharing has been disabled for this space.": "El uso compartido público se ha desactivado para este espacio.",
"Copy page": "Copiar página",
"Copy page to a different space.": "Copiar página en otro espacio",
"Page copied successfully": "Página copiada exitosamente",
@@ -487,7 +532,7 @@
"Enter one of your backup codes. Each backup code can only be used once.": "Introduce uno de tus códigos de seguridad. Cada código de seguridad solo puede ser usado una vez.",
"Verify": "Verificar",
"Trash": "Papelera",
- "Pages in trash will be permanently deleted after 30 days.": "Las páginas en la papelera serán eliminadas permanentemente después de 30 días.",
+ "Pages in trash will be permanently deleted after {{count}} days.": "{count, plural, one{Las páginas en la papelera se eliminarán permanentemente después de # día.} other{Las páginas en la papelera se eliminarán permanentemente después de # días.}}",
"Deleted": "Eliminado",
"No pages in trash": "No hay páginas en la papelera",
"Permanently delete page?": "¿Eliminar página permanentemente?",
@@ -559,19 +604,94 @@
"This action cannot be undone. Any applications using this API key will stop working.": "Esta acción no se puede deshacer. Las aplicaciones que utilicen esta clave API dejarán de funcionar.",
"Update API key": "Actualizar clave API",
"Manage API keys for all users in the workspace": "Gestionar claves API para todos los usuarios en el espacio de trabajo",
+ "Restrict API key creation to admins": "Restringir la creación de claves API a administradores",
+ "Only admins and owners can create new API keys. Existing member keys will continue to work.": "Solo los administradores y propietarios pueden crear nuevas claves API. Las claves de miembros existentes seguirán funcionando.",
+ "Toggle restrict API keys to admins": "Activar o desactivar la restricción de claves API solo a administradores",
+ "API key creation is restricted to admins by your workspace administrator.": "La creación de claves API está restringida a administradores por el administrador de tu espacio de trabajo.",
"AI settings": "Configuración de IA",
"AI search": "Búsqueda de IA",
"AI Answer": "Respuesta de IA",
"Ask AI": "Preguntar a IA",
"AI is thinking...": "IA está pensando...",
"Ask a question...": "Haz una pregunta...",
- "AI-powered search (Ask AI)": "Búsqueda impulsada por IA (Preguntar a IA)",
+ "AI Answers": "Respuestas de IA",
+ "AI-powered search (AI Answers)": "Búsqueda impulsada por IA (Respuestas de IA)",
"AI search uses vector embeddings to provide semantic search capabilities across your workspace content.": "La búsqueda de IA utiliza incrustaciones vectoriales para proporcionar capacidades de búsqueda semántica en todo el contenido de su espacio de trabajo.",
"Toggle AI search": "Alternar búsqueda de IA",
+ "Generative AI (Ask AI)": "IA generativa (Preguntar a la IA)",
+ "Enable AI-powered content generation in the editor. Allows users to generate, improve, translate and transform text.": "Habilitar la generación de contenido impulsada por IA en el editor. Permite a los usuarios generar, mejorar, traducir y transformar texto.",
+ "Toggle generative AI": "Activar IA generativa",
+ "Enterprise feature": "Función empresarial",
+ "AI is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "La IA solo está disponible en la edición empresarial de Docmost. Contacte con sales@docmost.com.",
+ "AI & MCP": "IA y MCP",
+ "AI": "IA",
+ "MCP": "MCP",
+ "Model Context Protocol (MCP)": "Protocolo de Contexto del Modelo (MCP)",
+ "Enable the MCP server to allow AI assistants and tools to interact with your workspace content.": "Habilite el servidor MCP para permitir que asistentes de IA y herramientas interactúen con el contenido de su espacio de trabajo.",
+ "MCP is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "MCP solo está disponible en la edición empresarial de Docmost. Contacte con sales@docmost.com.",
+ "MCP documentation": "Documentación de MCP",
+ "MCP Server URL": "URL del servidor MCP",
+ "Use your API key for authentication. You can manage API keys in your account settings.": "Use su clave API para la autenticación. Puede gestionar las claves API en la configuración de su cuenta.",
+ "Supported tools": "Herramientas compatibles",
+ "Your workspace has MCP enabled. Use your API key to connect AI assistants.": "Su espacio de trabajo tiene MCP habilitado. Use su clave API para conectar asistentes de IA.",
+ "MCP server URL:": "URL del servidor MCP:",
+ "Learn more": "Más información",
+ "View the": "Ver la",
+ "for usage details.": "para detalles de uso.",
+ "for setup instructions.": "para instrucciones de configuración.",
+ "API documentation": "Documentación de la API",
"Sources": "Fuentes",
- "Ask AI not available for attachments": "Preguntar a IA no está disponible para adjuntos",
+ "AI Answers not available for attachments": "Respuestas de IA no disponibles para archivos adjuntos",
"No answer available": "No hay respuesta disponible",
"Background color": "Color de fondo",
"Highlight color": "Color de resaltado",
- "Remove color": "Eliminar color"
+ "Remove color": "Eliminar color",
+ "Notifications": "Notificaciones",
+ "No notifications": "Sin notificaciones",
+ "No unread notifications": "No hay notificaciones no leídas",
+ "All notifications": "Todas las notificaciones",
+ "Unread only": "Solo no leídas",
+ "Mark all as read": "Marcar todo como leído",
+ "Mark as read": "Marcar como leído",
+ "More options": "Más opciones",
+ "mentioned you in a comment": "te mencionó en un comentario",
+ "commented on a page": "comentó en una página",
+ "resolved a comment": "resolvió un comentario",
+ "mentioned you on a page": "te mencionó en una página",
+ "gave you edit access to a page": "Te dio acceso para editar una página.",
+ "gave you view access to a page": "Te dio acceso para ver una página.",
+ "Today": "Hoy",
+ "Yesterday": "Ayer",
+ "This week": "Esta semana",
+ "Older": "Más antiguo",
+ "Restricted page": "Página restringida",
+ "Restricted pages cannot be shared publicly.": "Las páginas restringidas no pueden compartirse públicamente.",
+ "Restricted by parent": "Restringida por la página padre",
+ "Restricted": "Restringida",
+ "Open": "Abierta",
+ "Inherits restrictions from ancestor page": "Hereda las restricciones de una página superior.",
+ "Only people listed below can access this page": "Solo las personas que figuran a continuación pueden acceder a esta página.",
+ "Everyone in this space can access": "Todos en este espacio pueden acceder.",
+ "No additional restrictions on this page": "No hay restricciones adicionales en esta página.",
+ "Only specific people can access": "Solo determinadas personas pueden acceder.",
+ "Use only inherited restrictions": "Usar solo las restricciones heredadas.",
+ "Add restrictions on top of inherited": "Agregar restricciones además de las heredadas.",
+ "Inherited restriction": "Restricción heredada",
+ "Access limited by": "Acceso limitado por",
+ "Restrict access to control who can view and edit this page": "Restringir el acceso para controlar quién puede ver y editar esta página.",
+ "Add additional restrictions specific to this page": "Agregar restricciones adicionales específicas para esta página.",
+ "Access": "Acceso",
+ "People with access": "Personas con acceso",
+ "Remove all": "Eliminar todo",
+ "Remove access": "Eliminar acceso",
+ "Remove all access": "Eliminar todo el acceso",
+ "Are you sure you want to remove this member's access to the page?": "¿Está seguro de que desea eliminar el acceso de este miembro a la página?",
+ "Are you sure you want to remove all specific access? This will make the page open to everyone in the space.": "¿Está seguro de que desea eliminar todo el acceso específico? Esto hará que la página esté abierta a todos en el espacio.",
+ "Trash retention": "Retención de la papelera",
+ "Pages in trash will be permanently deleted after this period.": "Las páginas en la papelera se eliminarán permanentemente después de este período.",
+ "Trash retention updated": "Retención de la papelera actualizada",
+ "Failed to update trash retention": "No se pudo actualizar la retención de la papelera.",
+ "Removed page restriction": "Restricción de página eliminada",
+ "Added page permission": "Permiso de página añadido",
+ "Removed page permission": "Permiso de página eliminado"
}
diff --git a/apps/client/public/locales/fr-FR/translation.json b/apps/client/public/locales/fr-FR/translation.json
index 40a1e68a..f0e4f7af 100644
--- a/apps/client/public/locales/fr-FR/translation.json
+++ b/apps/client/public/locales/fr-FR/translation.json
@@ -116,6 +116,7 @@
"No group found": "Aucun groupe trouvé",
"No page history saved yet.": "Aucun historique de la page enregistré pour l'instant.",
"No pages yet": "Aucune page pour l'instant",
+ "No shared pages": "Aucune page partagée",
"No results found...": "Aucun résultat trouvé...",
"No user found": "Aucun utilisateur trouvé",
"Overview": "Vue d'ensemble",
@@ -123,11 +124,14 @@
"page": "page",
"Page deleted successfully": "Page supprimée avec succès",
"Page history": "Historique de la page",
+ "Select version": "Sélectionner la version",
+ "Highlight changes": "Mettre en évidence les changements",
"Page import is in progress. Please do not close this tab.": "L'importation de la page est en cours. Veuillez ne pas fermer cet onglet.",
"Pages": "Pages",
"pages": "pages",
"Password": "Mot de passe",
"Password changed successfully": "Mot de passe changé avec succès",
+ "People": "Personnes",
"Pending": "En attente",
"Please confirm your action": "Veuillez confirmer votre action",
"Preferences": "Préférences",
@@ -205,6 +209,9 @@
"Reply...": "Répondre...",
"Error loading comments.": "Erreur lors du chargement des commentaires.",
"No comments yet.": "Pas de commentaires pour l'instant.",
+ "No open comments.": "Aucun commentaire ouvert.",
+ "No resolved comments.": "Aucun commentaire résolu.",
+ "Add a comment...": "Ajouter un commentaire...",
"Edit comment": "Modifier le commentaire",
"Delete comment": "Supprimer le commentaire",
"Are you sure you want to delete this comment?": "Êtes-vous sûr de vouloir supprimer ce commentaire ?",
@@ -226,7 +233,6 @@
"Are you sure you want to unresolve this comment thread?": "Êtes-vous sûr de vouloir désorganiser ce fil de commentaires ?",
"Resolved": "Résolu",
"No active comments.": "Aucun commentaire actif.",
- "No resolved comments.": "Aucun commentaire résolu.",
"Revoke invitation": "Révoquer l'invitation",
"Revoke": "Révoquer",
"Don't": "Ne pas",
@@ -272,6 +278,7 @@
"Add row below": "Ajouter une ligne en dessous",
"Delete table": "Supprimer le tableau",
"Info": "Info",
+ "Note": "Remarque",
"Success": "Succès",
"Warning": "Avertissement",
"Danger": "Danger",
@@ -353,9 +360,23 @@
"Insert current date": "Insérer la date actuelle",
"Draw and sketch excalidraw diagrams": "Dessiner et esquisser des diagrammes Excalidraw",
"Multiple": "Multiple",
+ "Turn into": "Transformer en",
+ "Text align": "Alignement du texte",
+ "This page may have been deleted, moved, or you may not have access.": "Cette page a peut-être été supprimée, déplacée ou vous n'y avez peut-être pas accès.",
+ "Go to homepage": "Aller à l'accueil",
+ "Pages you create will show up here.": "Les pages que vous créez apparaîtront ici.",
"Heading {{level}}": "Titre {{level}}",
"Toggle title": "Basculer le titre",
"Write anything. Enter \"/\" for commands": "Écrivez n'importe quoi. Entrez \"/\" pour les commandes",
+ "Write...": "Écrire...",
+ "Column count": "Nombre de colonnes",
+ "{{count}} Columns": "{count, plural, one {# colonne} other {# colonnes}}",
+ "Equal columns": "Colonnes égales",
+ "Left sidebar": "Barre latérale gauche",
+ "Right sidebar": "Barre latérale droite",
+ "Wide center": "Large au centre",
+ "Left wide": "Large à gauche",
+ "Right wide": "Large à droite",
"Names do not match": "Les noms ne correspondent pas",
"Today, {{time}}": "Aujourd'hui, {{time}}",
"Yesterday, {{time}}": "Hier, {{time}}",
@@ -378,6 +399,13 @@
"Delete member": "Supprimer le membre",
"Member deleted successfully": "Membre supprimé avec succès",
"Are you sure you want to delete this workspace member? This action is irreversible.": "Êtes-vous sûr de vouloir supprimer ce membre de l'espace de travail? Cette action est irréversible.",
+ "Deactivate member": "Désactiver le membre",
+ "Activate member": "Activer le membre",
+ "Are you sure you want to deactivate this workspace member? They will no longer be able to access this workspace.": "Êtes-vous sûr de vouloir désactiver ce membre de l'espace de travail ? Cette personne ne pourra plus accéder à cet espace de travail.",
+ "Are you sure you want to activate this workspace member?": "Êtes-vous sûr de vouloir activer ce membre de l'espace de travail ?",
+ "Deactivate": "Désactiver",
+ "Activate": "Activer",
+ "Deactivated": "Désactivé",
"Move": "Déplacer",
"Move page": "Déplacer la page",
"Move page to a different space.": "Déplacer la page vers un autre espace.",
@@ -405,6 +433,23 @@
"Share deleted successfully": "Partage supprimé avec succès",
"Share not found": "Partage non trouvé",
"Failed to share page": "Échec du partage de la page",
+ "Disable public sharing": "Désactiver le partage public",
+ "Prevent members from sharing pages publicly.": "Empêcher les membres de partager des pages publiquement.",
+ "Toggle public sharing": "Basculer le partage public",
+ "Toggle space public sharing": "Basculer le partage public de l'espace",
+ "Public sharing is disabled at the workspace level": "Le partage public est désactivé au niveau de l'espace de travail",
+ "Prevent pages in this space from being shared publicly.": "Empêcher les pages de cet espace d'être partagées publiquement.",
+ "Requires an enterprise license": "Nécessite une licence d'entreprise",
+ "Page permissions": "Autorisations de la page",
+ "Control who can view and edit individual pages. Available with an enterprise license.": "Contrôlez qui peut consulter et modifier chaque page. Disponible avec une licence Entreprise.",
+ "Enable public sharing": "Activer le partage public",
+ "Are you sure you want to enable public sharing? Members will be able to share pages publicly.": "Êtes-vous sûr de vouloir activer le partage public ? Les membres pourront partager des pages publiquement.",
+ "Are you sure you want to disable public sharing? All existing shared links in this workspace will be deleted.": "Êtes-vous sûr de vouloir désactiver le partage public ? Tous les liens partagés existants dans cet espace de travail seront supprimés.",
+ "Are you sure you want to enable public sharing for this space?": "Êtes-vous sûr de vouloir activer le partage public pour cet espace ?",
+ "Are you sure you want to disable public sharing? All existing shared links in this space will be deleted.": "Êtes-vous sûr de vouloir désactiver le partage public ? Tous les liens partagés existants dans cet espace seront supprimés.",
+ "Public sharing is disabled": "Le partage public est désactivé",
+ "Public sharing has been disabled at the workspace level.": "Le partage public a été désactivé au niveau de l'espace de travail.",
+ "Public sharing has been disabled for this space.": "Le partage public a été désactivé pour cet espace.",
"Copy page": "Copier la page",
"Copy page to a different space.": "Copier la page dans un autre espace.",
"Page copied successfully": "Page copiée avec succès",
@@ -487,7 +532,7 @@
"Enter one of your backup codes. Each backup code can only be used once.": "Entrez un de vos codes de sauvegarde. Chaque code de sauvegarde ne peut être utilisé qu'une seule fois.",
"Verify": "Vérifier",
"Trash": "Corbeille",
- "Pages in trash will be permanently deleted after 30 days.": "Les pages dans la corbeille seront définitivement supprimées après 30 jours.",
+ "Pages in trash will be permanently deleted after {{count}} days.": "Les pages dans la corbeille seront définitivement supprimées après {{count}} jours.",
"Deleted": "Supprimé",
"No pages in trash": "Aucune page dans la corbeille",
"Permanently delete page?": "Supprimer définitivement la page ?",
@@ -559,19 +604,94 @@
"This action cannot be undone. Any applications using this API key will stop working.": "Cette action ne peut pas être annulée. Toutes les applications utilisant cette clé API cesseront de fonctionner.",
"Update API key": "Mettre à jour la clé API",
"Manage API keys for all users in the workspace": "Gérer les clés API pour tous les utilisateurs dans l'espace de travail",
+ "Restrict API key creation to admins": "Restreindre la création de clés API aux administrateurs",
+ "Only admins and owners can create new API keys. Existing member keys will continue to work.": "Seuls les administrateurs et les propriétaires peuvent créer de nouvelles clés API. Les clés des membres existants continueront de fonctionner.",
+ "Toggle restrict API keys to admins": "Activer ou désactiver la restriction des clés API aux administrateurs",
+ "API key creation is restricted to admins by your workspace administrator.": "La création de clés API est restreinte aux administrateurs par l’administrateur de votre espace de travail.",
"AI settings": "Paramètres de l'IA",
"AI search": "Recherche IA",
"AI Answer": "Réponse IA",
"Ask AI": "Demander à l'IA",
"AI is thinking...": "L'IA réfléchit...",
"Ask a question...": "Posez une question...",
- "AI-powered search (Ask AI)": "Recherche assistée par l'IA (Demander à l'IA)",
+ "AI Answers": "Réponses IA",
+ "AI-powered search (AI Answers)": "Recherche propulsée par IA (Réponses IA)",
"AI search uses vector embeddings to provide semantic search capabilities across your workspace content.": "La recherche IA utilise des incorporations vectorielles pour fournir des capacités de recherche sémantique à travers le contenu de votre espace de travail.",
"Toggle AI search": "Basculer la recherche IA",
+ "Generative AI (Ask AI)": "IA générative (Demandez à l'IA)",
+ "Enable AI-powered content generation in the editor. Allows users to generate, improve, translate and transform text.": "Activer la génération de contenu assistée par IA dans l'éditeur. Permet aux utilisateurs de générer, améliorer, traduire et transformer du texte.",
+ "Toggle generative AI": "Activer/désactiver l'IA générative",
+ "Enterprise feature": "Fonctionnalité entreprise",
+ "AI is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "L'IA n'est disponible que dans l'édition Entreprise de Docmost. Contactez sales@docmost.com.",
+ "AI & MCP": "IA & MCP",
+ "AI": "IA",
+ "MCP": "MCP",
+ "Model Context Protocol (MCP)": "Protocole de contexte de modèle (MCP)",
+ "Enable the MCP server to allow AI assistants and tools to interact with your workspace content.": "Activez le serveur MCP pour permettre aux assistants et outils IA d'interagir avec le contenu de votre espace de travail.",
+ "MCP is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "MCP n'est disponible que dans l'édition Entreprise de Docmost. Contactez sales@docmost.com.",
+ "MCP documentation": "Documentation MCP",
+ "MCP Server URL": "URL du serveur MCP",
+ "Use your API key for authentication. You can manage API keys in your account settings.": "Utilisez votre clé API pour l'authentification. Vous pouvez gérer les clés API dans les paramètres de votre compte.",
+ "Supported tools": "Outils pris en charge",
+ "Your workspace has MCP enabled. Use your API key to connect AI assistants.": "Votre espace de travail a MCP activé. Utilisez votre clé API pour connecter des assistants IA.",
+ "MCP server URL:": "URL du serveur MCP :",
+ "Learn more": "En savoir plus",
+ "View the": "Voir la",
+ "for usage details.": "pour les détails d'utilisation.",
+ "for setup instructions.": "pour les instructions de configuration.",
+ "API documentation": "Documentation de l'API",
"Sources": "Sources",
- "Ask AI not available for attachments": "Demande à l'IA non disponible pour les pièces jointes",
+ "AI Answers not available for attachments": "Réponses IA non disponibles pour les pièces jointes",
"No answer available": "Pas de réponse disponible",
"Background color": "Couleur de fond",
"Highlight color": "Couleur de surbrillance",
- "Remove color": "Supprimer la couleur"
+ "Remove color": "Supprimer la couleur",
+ "Notifications": "Notifications",
+ "No notifications": "Aucune notification",
+ "No unread notifications": "Aucune notification non lue",
+ "All notifications": "Toutes les notifications",
+ "Unread only": "Non lues uniquement",
+ "Mark all as read": "Tout marquer comme lu",
+ "Mark as read": "Marquer comme lu",
+ "More options": "Plus d'options",
+ "mentioned you in a comment": "vous a mentionné dans un commentaire",
+ "commented on a page": "a commenté une page",
+ "resolved a comment": "a résolu un commentaire",
+ "mentioned you on a page": "vous a mentionné sur une page",
+ "gave you edit access to a page": "vous a donné l'accès pour modifier une page",
+ "gave you view access to a page": "vous a donné l'accès pour consulter une page",
+ "Today": "Aujourd'hui",
+ "Yesterday": "Hier",
+ "This week": "Cette semaine",
+ "Older": "Plus ancien",
+ "Restricted page": "Page restreinte",
+ "Restricted pages cannot be shared publicly.": "Les pages restreintes ne peuvent pas être partagées publiquement.",
+ "Restricted by parent": "Restreint par la page parente",
+ "Restricted": "Restreint",
+ "Open": "Ouvert",
+ "Inherits restrictions from ancestor page": "Hérite des restrictions d'une page ancêtre",
+ "Only people listed below can access this page": "Seules les personnes listées ci-dessous peuvent accéder à cette page",
+ "Everyone in this space can access": "Tout le monde dans cet espace y a accès",
+ "No additional restrictions on this page": "Aucune restriction supplémentaire sur cette page",
+ "Only specific people can access": "Seules certaines personnes peuvent y accéder",
+ "Use only inherited restrictions": "Utiliser uniquement les restrictions héritées",
+ "Add restrictions on top of inherited": "Ajouter des restrictions en plus de celles héritées",
+ "Inherited restriction": "Restriction héritée",
+ "Access limited by": "Accès limité par",
+ "Restrict access to control who can view and edit this page": "Restreindre l'accès pour contrôler qui peut consulter et modifier cette page",
+ "Add additional restrictions specific to this page": "Ajouter des restrictions supplémentaires propres à cette page",
+ "Access": "Accès",
+ "People with access": "Personnes ayant accès",
+ "Remove all": "Tout retirer",
+ "Remove access": "Retirer l'accès",
+ "Remove all access": "Retirer tous les accès",
+ "Are you sure you want to remove this member's access to the page?": "Êtes-vous sûr de vouloir retirer l'accès de ce membre à la page ?",
+ "Are you sure you want to remove all specific access? This will make the page open to everyone in the space.": "Êtes-vous sûr de vouloir supprimer tous les accès spécifiques ? Cela rendra la page accessible à tous les membres de l'espace.",
+ "Trash retention": "Conservation de la corbeille",
+ "Pages in trash will be permanently deleted after this period.": "Les pages dans la corbeille seront définitivement supprimées après cette période.",
+ "Trash retention updated": "Durée de conservation de la corbeille mise à jour",
+ "Failed to update trash retention": "Échec de la mise à jour de la durée de conservation de la corbeille",
+ "Removed page restriction": "Restriction de la page supprimée",
+ "Added page permission": "Autorisation de la page ajoutée",
+ "Removed page permission": "Autorisation de la page supprimée"
}
diff --git a/apps/client/public/locales/it-IT/translation.json b/apps/client/public/locales/it-IT/translation.json
index ff80df0f..78a13f5c 100644
--- a/apps/client/public/locales/it-IT/translation.json
+++ b/apps/client/public/locales/it-IT/translation.json
@@ -116,6 +116,7 @@
"No group found": "Nessun gruppo trovato",
"No page history saved yet.": "La pagina non ha una cronologia per ora.",
"No pages yet": "Nessuna pagina per ora",
+ "No shared pages": "Nessuna pagina condivisa.",
"No results found...": "Nessun risultato trovato...",
"No user found": "Nessun utente trovato",
"Overview": "Panoramica",
@@ -123,11 +124,14 @@
"page": "pagina",
"Page deleted successfully": "Pagina eliminata con successo",
"Page history": "Cronologia della pagina",
+ "Select version": "Seleziona versione",
+ "Highlight changes": "Evidenzia modifiche",
"Page import is in progress. Please do not close this tab.": "L'importazione della pagina è in corso. Si prega di non chiudere questa scheda.",
"Pages": "Pagine",
"pages": "pagine",
"Password": "Password",
"Password changed successfully": "Password cambiata con successo",
+ "People": "Persone",
"Pending": "In sospeso",
"Please confirm your action": "Si prega di confermare la propria azione",
"Preferences": "Preferenze",
@@ -205,6 +209,9 @@
"Reply...": "Rispondi...",
"Error loading comments.": "Si è verificato un errore durante il caricamento dei commenti.",
"No comments yet.": "Nessun commento per ora.",
+ "No open comments.": "Nessun commento aperto.",
+ "No resolved comments.": "Nessun commento risolto.",
+ "Add a comment...": "Aggiungi un commento...",
"Edit comment": "Modifica commento",
"Delete comment": "Elimina commento",
"Are you sure you want to delete this comment?": "Sei sicuro di voler eliminare questo commento?",
@@ -226,7 +233,6 @@
"Are you sure you want to unresolve this comment thread?": "Sei sicuro di voler annullare la risoluzione di questa discussione di commenti?",
"Resolved": "Risolto",
"No active comments.": "Nessun commento attivo.",
- "No resolved comments.": "Nessun commento risolto.",
"Revoke invitation": "Revoca invito",
"Revoke": "Revoca",
"Don't": "Non",
@@ -272,6 +278,7 @@
"Add row below": "Aggiungi riga sotto",
"Delete table": "Elimina tabella",
"Info": "Informazioni",
+ "Note": "Nota",
"Success": "Successo",
"Warning": "Avviso",
"Danger": "Pericolo",
@@ -353,9 +360,23 @@
"Insert current date": "Inserisci la data corrente",
"Draw and sketch excalidraw diagrams": "Disegna e schizza diagrammi excalidraw",
"Multiple": "Multiplo",
+ "Turn into": "Trasforma in",
+ "Text align": "Allinea testo",
+ "This page may have been deleted, moved, or you may not have access.": "Questa pagina potrebbe essere stata eliminata o spostata, oppure potresti non avere accesso.",
+ "Go to homepage": "Vai alla pagina principale",
+ "Pages you create will show up here.": "Le pagine che crei appariranno qui.",
"Heading {{level}}": "Intestazione {{level}}",
"Toggle title": "Attiva/disattiva titolo",
"Write anything. Enter \"/\" for commands": "Scrivi qualcosa. Digita \"/\" per i comandi",
+ "Write...": "Scrivi...",
+ "Column count": "Numero di colonne",
+ "{{count}} Columns": "{{count}} colonne",
+ "Equal columns": "Colonne uguali",
+ "Left sidebar": "Barra laterale sinistra",
+ "Right sidebar": "Barra laterale destra",
+ "Wide center": "Centro ampio",
+ "Left wide": "Ampia a sinistra",
+ "Right wide": "Ampia a destra",
"Names do not match": "I nomi non corrispondono",
"Today, {{time}}": "Oggi, {{time}}",
"Yesterday, {{time}}": "Ieri, {{time}}",
@@ -378,6 +399,13 @@
"Delete member": "Elimina membro",
"Member deleted successfully": "Membro eliminato con successo",
"Are you sure you want to delete this workspace member? This action is irreversible.": "Sei sicuro di voler eliminare questo membro del workspace? Questa azione è irreversibile.",
+ "Deactivate member": "Disattiva membro",
+ "Activate member": "Attiva membro",
+ "Are you sure you want to deactivate this workspace member? They will no longer be able to access this workspace.": "Sei sicuro di voler disattivare questo membro dello spazio di lavoro? Non potrà più accedere a questo spazio di lavoro.",
+ "Are you sure you want to activate this workspace member?": "Sei sicuro di voler attivare questo membro dello spazio di lavoro?",
+ "Deactivate": "Disattiva",
+ "Activate": "Attiva",
+ "Deactivated": "Disattivato",
"Move": "Sposta",
"Move page": "Sposta pagina",
"Move page to a different space.": "Sposta la pagina in un altro spazio.",
@@ -405,6 +433,23 @@
"Share deleted successfully": "Condivisione eliminata con successo",
"Share not found": "Condivisione non trovata",
"Failed to share page": "Condivisione della pagina fallita",
+ "Disable public sharing": "Disabilita la condivisione pubblica",
+ "Prevent members from sharing pages publicly.": "Impedisci ai membri di condividere pubblicamente le pagine.",
+ "Toggle public sharing": "Attiva/disattiva la condivisione pubblica",
+ "Toggle space public sharing": "Attiva/disattiva la condivisione pubblica nello spazio",
+ "Public sharing is disabled at the workspace level": "La condivisione pubblica è disabilitata a livello di area di lavoro",
+ "Prevent pages in this space from being shared publicly.": "Impedisci che le pagine in questo spazio vengano condivise pubblicamente.",
+ "Requires an enterprise license": "Richiede una licenza enterprise",
+ "Page permissions": "Autorizzazioni della pagina.",
+ "Control who can view and edit individual pages. Available with an enterprise license.": "Controlla chi può visualizzare e modificare le singole pagine. Disponibile con una licenza Enterprise.",
+ "Enable public sharing": "Abilita la condivisione pubblica",
+ "Are you sure you want to enable public sharing? Members will be able to share pages publicly.": "Sei sicuro di voler abilitare la condivisione pubblica? I membri potranno condividere le pagine pubblicamente.",
+ "Are you sure you want to disable public sharing? All existing shared links in this workspace will be deleted.": "Sei sicuro di voler disabilitare la condivisione pubblica? Tutti i link condivisi esistenti in questa area di lavoro verranno eliminati.",
+ "Are you sure you want to enable public sharing for this space?": "Sei sicuro di voler abilitare la condivisione pubblica per questo spazio?",
+ "Are you sure you want to disable public sharing? All existing shared links in this space will be deleted.": "Sei sicuro di voler disabilitare la condivisione pubblica? Tutti i link condivisi esistenti in questo spazio verranno eliminati.",
+ "Public sharing is disabled": "La condivisione pubblica è disabilitata",
+ "Public sharing has been disabled at the workspace level.": "La condivisione pubblica è stata disabilitata a livello di area di lavoro.",
+ "Public sharing has been disabled for this space.": "La condivisione pubblica è stata disabilitata per questo spazio.",
"Copy page": "Copia pagina",
"Copy page to a different space.": "Copia pagina in un altro spazio.",
"Page copied successfully": "Pagina copiata con successo",
@@ -487,7 +532,7 @@
"Enter one of your backup codes. Each backup code can only be used once.": "Inserisci uno dei tuoi codici di backup. Ogni codice di backup può essere utilizzato solo una volta.",
"Verify": "Verifica",
"Trash": "Cestino",
- "Pages in trash will be permanently deleted after 30 days.": "Le pagine nel cestino verranno eliminate definitivamente dopo 30 giorni.",
+ "Pages in trash will be permanently deleted after {{count}} days.": "Le pagine nel cestino verranno eliminate definitivamente dopo {{count}} giorni.",
"Deleted": "Eliminato",
"No pages in trash": "Nessuna pagina nel cestino",
"Permanently delete page?": "Eliminare definitivamente la pagina?",
@@ -559,19 +604,94 @@
"This action cannot be undone. Any applications using this API key will stop working.": "Questa azione non può essere annullata. Qualsiasi applicazione che utilizza questa chiave API smetterà di funzionare.",
"Update API key": "Aggiorna chiave API",
"Manage API keys for all users in the workspace": "Gestisci le chiavi API per tutti gli utenti nell'area di lavoro",
+ "Restrict API key creation to admins": "Limita la creazione delle chiavi API agli amministratori",
+ "Only admins and owners can create new API keys. Existing member keys will continue to work.": "Solo gli amministratori e i proprietari possono creare nuove chiavi API. Le chiavi dei membri esistenti continueranno a funzionare.",
+ "Toggle restrict API keys to admins": "Attiva/disattiva la limitazione delle chiavi API agli amministratori",
+ "API key creation is restricted to admins by your workspace administrator.": "La creazione delle chiavi API è limitata agli amministratori dal tuo amministratore dello spazio di lavoro.",
"AI settings": "Impostazioni AI",
"AI search": "Ricerca AI",
"AI Answer": "Risposta AI",
"Ask AI": "Chiedi all'AI",
"AI is thinking...": "L'AI sta pensando...",
"Ask a question...": "Fai una domanda...",
- "AI-powered search (Ask AI)": "Ricerca potenziata dall'AI (Chiedi all'AI)",
+ "AI Answers": "Risposte AI",
+ "AI-powered search (AI Answers)": "Ricerca con AI (Risposte AI)",
"AI search uses vector embeddings to provide semantic search capabilities across your workspace content.": "La ricerca AI utilizza embeddings vettoriali per fornire capacità di ricerca semantica nel contenuto della tua area di lavoro.",
"Toggle AI search": "Attiva/disattiva ricerca AI",
+ "Generative AI (Ask AI)": "AI generativa (Chiedi AI)",
+ "Enable AI-powered content generation in the editor. Allows users to generate, improve, translate and transform text.": "Abilita la generazione di contenuti con AI nell'editor. Consente agli utenti di generare, migliorare, tradurre e trasformare il testo.",
+ "Toggle generative AI": "Attiva/Disattiva AI generativa",
+ "Enterprise feature": "Funzionalità Enterprise",
+ "AI is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "L'IA è disponibile solo nell'edizione Enterprise di Docmost. Contatta sales@docmost.com.",
+ "AI & MCP": "IA e MCP",
+ "AI": "IA",
+ "MCP": "MCP",
+ "Model Context Protocol (MCP)": "Model Context Protocol (MCP)",
+ "Enable the MCP server to allow AI assistants and tools to interact with your workspace content.": "Abilita il server MCP per consentire ad assistenti e strumenti IA di interagire con i contenuti del tuo spazio di lavoro.",
+ "MCP is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "MCP è disponibile solo nell'edizione Enterprise di Docmost. Contatta sales@docmost.com.",
+ "MCP documentation": "Documentazione MCP",
+ "MCP Server URL": "URL del server MCP",
+ "Use your API key for authentication. You can manage API keys in your account settings.": "Usa la tua chiave API per l'autenticazione. Puoi gestire le chiavi API nelle impostazioni del tuo account.",
+ "Supported tools": "Strumenti supportati",
+ "Your workspace has MCP enabled. Use your API key to connect AI assistants.": "Il tuo spazio di lavoro ha MCP abilitato. Usa la tua chiave API per collegare gli assistenti IA.",
+ "MCP server URL:": "URL del server MCP:",
+ "Learn more": "Scopri di più",
+ "View the": "Visualizza la",
+ "for usage details.": "per i dettagli sull'utilizzo.",
+ "for setup instructions.": "per le istruzioni di configurazione.",
+ "API documentation": "Documentazione API",
"Sources": "Fonti",
- "Ask AI not available for attachments": "Chiedere all'AI non è disponibile per gli allegati",
+ "AI Answers not available for attachments": "Risposte AI non disponibili per gli allegati",
"No answer available": "Nessuna risposta disponibile",
"Background color": "Colore di sfondo",
"Highlight color": "Colore evidenziato",
- "Remove color": "Rimuovi colore"
+ "Remove color": "Rimuovi colore",
+ "Notifications": "Notifiche",
+ "No notifications": "Nessuna notifica",
+ "No unread notifications": "Nessuna notifica non letta",
+ "All notifications": "Tutte le notifiche",
+ "Unread only": "Solo non lette",
+ "Mark all as read": "Segna tutto come letto",
+ "Mark as read": "Segna come letto",
+ "More options": "Altre opzioni",
+ "mentioned you in a comment": "ti ha menzionato in un commento",
+ "commented on a page": "ha commentato una pagina",
+ "resolved a comment": "ha risolto un commento",
+ "mentioned you on a page": "ti ha menzionato in una pagina",
+ "gave you edit access to a page": "ti ha concesso l'accesso per modificare una pagina",
+ "gave you view access to a page": "ti ha concesso l'accesso per visualizzare una pagina",
+ "Today": "Oggi",
+ "Yesterday": "Ieri",
+ "This week": "Questa settimana",
+ "Older": "Più vecchie",
+ "Restricted page": "Pagina con accesso ristretto",
+ "Restricted pages cannot be shared publicly.": "Le pagine con accesso ristretto non possono essere condivise pubblicamente.",
+ "Restricted by parent": "Limitata dalla pagina genitore",
+ "Restricted": "Limitata",
+ "Open": "Aperta",
+ "Inherits restrictions from ancestor page": "Eredita le restrizioni dalla pagina genitore",
+ "Only people listed below can access this page": "Solo le persone elencate di seguito possono accedere a questa pagina",
+ "Everyone in this space can access": "Chiunque in questo spazio può accedere",
+ "No additional restrictions on this page": "Nessuna restrizione aggiuntiva su questa pagina",
+ "Only specific people can access": "Solo persone specifiche possono accedere",
+ "Use only inherited restrictions": "Usa solo le restrizioni ereditate",
+ "Add restrictions on top of inherited": "Aggiungi restrizioni oltre a quelle ereditate",
+ "Inherited restriction": "Restrizione ereditata",
+ "Access limited by": "Accesso limitato da",
+ "Restrict access to control who can view and edit this page": "Limita l'accesso per controllare chi può visualizzare e modificare questa pagina",
+ "Add additional restrictions specific to this page": "Aggiungi restrizioni aggiuntive specifiche per questa pagina",
+ "Access": "Accesso",
+ "People with access": "Persone con accesso",
+ "Remove all": "Rimuovi tutto",
+ "Remove access": "Rimuovi accesso",
+ "Remove all access": "Rimuovi tutti gli accessi",
+ "Are you sure you want to remove this member's access to the page?": "Sei sicuro di voler rimuovere l'accesso di questo membro alla pagina?",
+ "Are you sure you want to remove all specific access? This will make the page open to everyone in the space.": "Sei sicuro di voler rimuovere tutti gli accessi specifici? Questo renderà la pagina accessibile a tutti nello spazio.",
+ "Trash retention": "Conservazione del cestino",
+ "Pages in trash will be permanently deleted after this period.": "Le pagine nel cestino verranno eliminate definitivamente dopo questo periodo.",
+ "Trash retention updated": "Conservazione del cestino aggiornata",
+ "Failed to update trash retention": "Impossibile aggiornare la conservazione del cestino",
+ "Removed page restriction": "Restrizione della pagina rimossa",
+ "Added page permission": "Permesso sulla pagina aggiunto",
+ "Removed page permission": "Permesso sulla pagina rimosso"
}
diff --git a/apps/client/public/locales/ja-JP/translation.json b/apps/client/public/locales/ja-JP/translation.json
index 4d18e074..09f10ab0 100644
--- a/apps/client/public/locales/ja-JP/translation.json
+++ b/apps/client/public/locales/ja-JP/translation.json
@@ -116,6 +116,7 @@
"No group found": "グループが見つかりません",
"No page history saved yet.": "ページ履歴がありません",
"No pages yet": "ページがありません",
+ "No shared pages": "共有ページはありません。",
"No results found...": "結果が見つかりません",
"No user found": "ユーザーが見つかりません",
"Overview": "概要",
@@ -123,11 +124,14 @@
"page": "ページ",
"Page deleted successfully": "ページを削除しました",
"Page history": "ページ履歴",
+ "Select version": "バージョンを選択",
+ "Highlight changes": "変更を強調表示",
"Page import is in progress. Please do not close this tab.": "ページをインポート中です。このタブを閉じないでください",
"Pages": "ページ",
"pages": "ページ",
"Password": "パスワード",
"Password changed successfully": "パスワードを変更しました",
+ "People": "メンバー",
"Pending": "保留中",
"Please confirm your action": "アクションを確認してください",
"Preferences": "設定",
@@ -205,6 +209,9 @@
"Reply...": "返信...",
"Error loading comments.": "コメントの読み込みに失敗しました",
"No comments yet.": "コメントがありません",
+ "No open comments.": "未解決のコメントはありません。",
+ "No resolved comments.": "解決済みのコメントはありません",
+ "Add a comment...": "コメントを追加...",
"Edit comment": "コメントを編集する",
"Delete comment": "コメントを削除する",
"Are you sure you want to delete this comment?": "このコメントを削除してもよろしいですか?",
@@ -226,7 +233,6 @@
"Are you sure you want to unresolve this comment thread?": "このコメントスレッドを未解決に戻しますか?",
"Resolved": "解決済",
"No active comments.": "アクティブなコメントはありません",
- "No resolved comments.": "解決済みのコメントはありません",
"Revoke invitation": "招待を取り消す",
"Revoke": "取り消す",
"Don't": "取り消さない",
@@ -272,6 +278,7 @@
"Add row below": "下に行を追加",
"Delete table": "テーブルを削除",
"Info": "情報",
+ "Note": "ノート",
"Success": "成功",
"Warning": "警告",
"Danger": "危険",
@@ -353,9 +360,23 @@
"Insert current date": "現在の日付を挿入します",
"Draw and sketch excalidraw diagrams": "Excalidraw 図を挿入します",
"Multiple": "複数",
+ "Turn into": "変換する",
+ "Text align": "テキストの配置",
+ "This page may have been deleted, moved, or you may not have access.": "このページは削除されたか移動されたか、またはアクセス権がない可能性があります。},{",
+ "Go to homepage": "ホームページへ移動",
+ "Pages you create will show up here.": "ここに作成したページが表示されます。",
"Heading {{level}}": "見出し {{level}}",
"Toggle title": "タイトルの表示/非表示を切り替える",
"Write anything. Enter \"/\" for commands": "文字を入力するか、「/」でコマンドを呼び出します",
+ "Write...": "ここに入力...",
+ "Column count": "列数",
+ "{{count}} Columns": "{{count}}列",
+ "Equal columns": "均等な列",
+ "Left sidebar": "左サイドバー",
+ "Right sidebar": "右サイドバー",
+ "Wide center": "中央ワイド",
+ "Left wide": "左ワイド",
+ "Right wide": "右ワイド",
"Names do not match": "名前が一致しません",
"Today, {{time}}": "今日、{{time}}",
"Yesterday, {{time}}": "昨日、{{time}}",
@@ -378,6 +399,13 @@
"Delete member": "メンバーを削除する",
"Member deleted successfully": "メンバーを削除しました",
"Are you sure you want to delete this workspace member? This action is irreversible.": "このメンバーを削除してもよろしいですか?この操作は取り消せません",
+ "Deactivate member": "メンバーを無効化",
+ "Activate member": "メンバーを有効化",
+ "Are you sure you want to deactivate this workspace member? They will no longer be able to access this workspace.": "本当にこのワークスペースのメンバーを無効化しますか?無効化すると、このワークスペースにアクセスできなくなります。",
+ "Are you sure you want to activate this workspace member?": "本当にこのワークスペースのメンバーを有効化しますか?",
+ "Deactivate": "無効化",
+ "Activate": "有効化",
+ "Deactivated": "無効化済み",
"Move": "移動",
"Move page": "ページを移動",
"Move page to a different space.": "ページを別のスペースに移動します",
@@ -405,6 +433,23 @@
"Share deleted successfully": "共有を削除しました",
"Share not found": "共有が見つかりません",
"Failed to share page": "ページの共有に失敗しました",
+ "Disable public sharing": "公開共有を無効にする",
+ "Prevent members from sharing pages publicly.": "メンバーがページを公開で共有するのを防ぐ。",
+ "Toggle public sharing": "公開共有を切り替える",
+ "Toggle space public sharing": "スペースの公開共有を切り替える",
+ "Public sharing is disabled at the workspace level": "ワークスペースレベルで公開共有が無効になっています",
+ "Prevent pages in this space from being shared publicly.": "このスペース内のページが公開で共有されるのを防ぐ。",
+ "Requires an enterprise license": "エンタープライズライセンスが必要です",
+ "Page permissions": "ページのアクセス権",
+ "Control who can view and edit individual pages. Available with an enterprise license.": "個々のページを誰が表示・編集できるかを制御します。エンタープライズライセンスで利用可能です。",
+ "Enable public sharing": "公開共有を有効にする",
+ "Are you sure you want to enable public sharing? Members will be able to share pages publicly.": "本当に公開共有を有効にしますか?メンバーはページを公開で共有できるようになります。",
+ "Are you sure you want to disable public sharing? All existing shared links in this workspace will be deleted.": "本当に公開共有を無効にしますか?このワークスペース内のすべての既存の共有リンクが削除されます。",
+ "Are you sure you want to enable public sharing for this space?": "本当にこのスペースの公開共有を有効にしますか?",
+ "Are you sure you want to disable public sharing? All existing shared links in this space will be deleted.": "本当に公開共有を無効にしますか?このスペースのすべての既存の共有リンクが削除されます。",
+ "Public sharing is disabled": "公開共有が無効になっています",
+ "Public sharing has been disabled at the workspace level.": "ワークスペースレベルで公開共有が無効になりました。",
+ "Public sharing has been disabled for this space.": "このスペースで公開共有が無効になりました。",
"Copy page": "ページをコピー",
"Copy page to a different space.": "ページを別のスペースにコピーします",
"Page copied successfully": "ページをコピーしました",
@@ -487,7 +532,7 @@
"Enter one of your backup codes. Each backup code can only be used once.": "バックアップコードを入力してください。各コードは1回のみ使用可能です",
"Verify": "確認",
"Trash": "ごみ箱",
- "Pages in trash will be permanently deleted after 30 days.": "ごみ箱内のページは30日後に完全に削除されます",
+ "Pages in trash will be permanently deleted after {{count}} days.": "{count, plural, other {ゴミ箱内のページは#日後に完全に削除されます。}}",
"Deleted": "削除",
"No pages in trash": "ごみ箱にページがありません",
"Permanently delete page?": "ページを完全に削除しますか?",
@@ -559,19 +604,94 @@
"This action cannot be undone. Any applications using this API key will stop working.": "この操作は取り消せません。このAPIキーを使用しているアプリケーションは動作しなくなります",
"Update API key": "APIキーを更新",
"Manage API keys for all users in the workspace": "ワークスペース内のすべてのユーザーのAPIキーを管理",
+ "Restrict API key creation to admins": "APIキーの作成を管理者のみに制限する",
+ "Only admins and owners can create new API keys. Existing member keys will continue to work.": "新しいAPIキーを作成できるのは管理者とオーナーのみです。既存のメンバーキーは引き続き有効です。",
+ "Toggle restrict API keys to admins": "APIキーの作成制限(管理者のみ)を切り替える",
+ "API key creation is restricted to admins by your workspace administrator.": "ワークスペース管理者によってAPIキーの作成が管理者のみに制限されています。",
"AI settings": "AI設定",
"AI search": "AI検索",
"AI Answer": "AI回答",
"Ask AI": "AIに質問する",
"AI is thinking...": "AIが考え中...",
"Ask a question...": "質問を入力...",
- "AI-powered search (Ask AI)": "AIによる検索(AIに質問)",
+ "AI Answers": "AI回答",
+ "AI-powered search (AI Answers)": "AI搭載検索 (AI回答)",
"AI search uses vector embeddings to provide semantic search capabilities across your workspace content.": "AI検索はベクター埋め込みを使用してワークスペース全体の意味検索を実現します",
"Toggle AI search": "AI検索を切り替え",
+ "Generative AI (Ask AI)": "生成AI (Ask AI)",
+ "Enable AI-powered content generation in the editor. Allows users to generate, improve, translate and transform text.": "エディターでAIを活用したコンテンツ生成を有効にします。ユーザーがテキストの生成、改善、翻訳、および変換を行うことができます。",
+ "Toggle generative AI": "生成AIを切り替える",
+ "Enterprise feature": "エンタープライズ機能",
+ "AI is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "AI は Docmost のエンタープライズ版でのみ利用可能です。sales@docmost.com までお問い合わせください。",
+ "AI & MCP": "AI と MCP",
+ "AI": "AI",
+ "MCP": "MCP",
+ "Model Context Protocol (MCP)": "モデルコンテキストプロトコル(MCP)",
+ "Enable the MCP server to allow AI assistants and tools to interact with your workspace content.": "MCP サーバーを有効にして、AI アシスタントやツールがワークスペースのコンテンツとやり取りできるようにします。",
+ "MCP is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "MCP は Docmost のエンタープライズ版でのみ利用可能です。sales@docmost.com までお問い合わせください。",
+ "MCP documentation": "MCP ドキュメント",
+ "MCP Server URL": "MCP サーバーの URL",
+ "Use your API key for authentication. You can manage API keys in your account settings.": "認証には API キーを使用してください。API キーはアカウント設定で管理できます。",
+ "Supported tools": "サポートされているツール",
+ "Your workspace has MCP enabled. Use your API key to connect AI assistants.": "このワークスペースでは MCP が有効になっています。AI アシスタントを接続するには API キーを使用してください。",
+ "MCP server URL:": "MCP サーバーの URL:",
+ "Learn more": "詳細を見る",
+ "View the": "表示",
+ "for usage details.": "使用方法の詳細については。",
+ "for setup instructions.": "設定手順については。",
+ "API documentation": "API ドキュメント",
"Sources": "ソース",
- "Ask AI not available for attachments": "添付ファイルにはAI質問は利用できません",
+ "AI Answers not available for attachments": "添付ファイルにはAI回答を利用できません",
"No answer available": "回答がありません",
"Background color": "背景色",
"Highlight color": "ハイライト色",
- "Remove color": "色を削除"
+ "Remove color": "色を削除",
+ "Notifications": "通知",
+ "No notifications": "通知なし",
+ "No unread notifications": "未読の通知はありません",
+ "All notifications": "すべての通知",
+ "Unread only": "未読のみ",
+ "Mark all as read": "すべてを既読にする",
+ "Mark as read": "既読にする",
+ "More options": "その他のオプション",
+ "mentioned you in a comment": "コメントであなたに言及しました",
+ "commented on a page": "ページにコメントしました",
+ "resolved a comment": "コメントを解決しました",
+ "mentioned you on a page": "ページ上であなたに言及しました",
+ "gave you edit access to a page": "あなたにページの編集アクセス権を付与しました",
+ "gave you view access to a page": "あなたにページの閲覧アクセス権を付与しました",
+ "Today": "今日",
+ "Yesterday": "昨日",
+ "This week": "今週",
+ "Older": "以前のもの",
+ "Restricted page": "アクセス制限されたページ",
+ "Restricted pages cannot be shared publicly.": "アクセス制限されたページは公開共有できません。",
+ "Restricted by parent": "親ページによって制限されています",
+ "Restricted": "制限あり",
+ "Open": "制限なし",
+ "Inherits restrictions from ancestor page": "上位ページから制限を継承しています",
+ "Only people listed below can access this page": "以下に記載されている人のみがこのページにアクセスできます",
+ "Everyone in this space can access": "このスペース内の全員がアクセスできます",
+ "No additional restrictions on this page": "このページに追加の制限はありません",
+ "Only specific people can access": "特定の人のみがアクセスできます",
+ "Use only inherited restrictions": "継承された制限のみを適用する",
+ "Add restrictions on top of inherited": "継承された制限に追加の制限を加える",
+ "Inherited restriction": "継承された制限",
+ "Access limited by": "アクセス制限元",
+ "Restrict access to control who can view and edit this page": "このページを誰が表示・編集できるかを制御するためにアクセスを制限します",
+ "Add additional restrictions specific to this page": "このページ固有の追加制限を設定する",
+ "Access": "アクセス",
+ "People with access": "アクセスできる人",
+ "Remove all": "すべてを削除",
+ "Remove access": "アクセス権を削除",
+ "Remove all access": "すべてのアクセス権を削除",
+ "Are you sure you want to remove this member's access to the page?": "このメンバーのページへのアクセス権を削除してもよろしいですか?",
+ "Are you sure you want to remove all specific access? This will make the page open to everyone in the space.": "すべての特定のアクセスを削除してもよろしいですか?これによりページはスペース内の全員に公開されます。",
+ "Trash retention": "ゴミ箱の保持期間",
+ "Pages in trash will be permanently deleted after this period.": "この期間を過ぎるとゴミ箱内のページは完全に削除されます。",
+ "Trash retention updated": "ゴミ箱保持期間が更新されました",
+ "Failed to update trash retention": "ゴミ箱保持期間の更新に失敗しました",
+ "Removed page restriction": "ページの制限を解除しました",
+ "Added page permission": "ページの権限を追加しました",
+ "Removed page permission": "ページの権限を削除しました"
}
diff --git a/apps/client/public/locales/ko-KR/translation.json b/apps/client/public/locales/ko-KR/translation.json
index d9b48b04..eb763685 100644
--- a/apps/client/public/locales/ko-KR/translation.json
+++ b/apps/client/public/locales/ko-KR/translation.json
@@ -116,6 +116,7 @@
"No group found": "팀을 찾을 수 없음",
"No page history saved yet.": "아직 저장된 페이지 기록이 없습니다.",
"No pages yet": "아직 페이지가 없습니다",
+ "No shared pages": "공유된 페이지가 없습니다.",
"No results found...": "결과를 찾을 수 없습니다...",
"No user found": "사용자를 찾을 수 없음",
"Overview": "개요",
@@ -123,11 +124,14 @@
"page": "페이지",
"Page deleted successfully": "페이지 삭제 완료",
"Page history": "페이지 기록",
+ "Select version": "버전 선택",
+ "Highlight changes": "변경 사항 강조",
"Page import is in progress. Please do not close this tab.": "페이지 가져오기가 진행 중입니다. 이 탭을 닫지 마세요.",
"Pages": "페이지",
"pages": "페이지",
"Password": "비밀번호",
"Password changed successfully": "비밀번호 변경 완료",
+ "People": "사용자",
"Pending": "대기 중",
"Please confirm your action": "작업을 확인해 주세요",
"Preferences": "설정",
@@ -205,6 +209,9 @@
"Reply...": "답글...",
"Error loading comments.": "댓글 불러오기 오류.",
"No comments yet.": "아직 댓글이 없습니다.",
+ "No open comments.": "열린 댓글이 없습니다.",
+ "No resolved comments.": "해결된 댓글이 없습니다.",
+ "Add a comment...": "댓글 추가...",
"Edit comment": "댓글 수정",
"Delete comment": "댓글 삭제",
"Are you sure you want to delete this comment?": "이 댓글을 삭제하시겠습니까?",
@@ -226,7 +233,6 @@
"Are you sure you want to unresolve this comment thread?": "이 댓글 스레드를 미해결로 변경하시겠습니까?",
"Resolved": "해결됨",
"No active comments.": "활성 댓글이 없습니다.",
- "No resolved comments.": "해결된 댓글이 없습니다.",
"Revoke invitation": "초대 취소",
"Revoke": "취소",
"Don't": "하지 않음",
@@ -272,6 +278,7 @@
"Add row below": "아래에 행 추가",
"Delete table": "테이블 삭제",
"Info": "정보",
+ "Note": "참고",
"Success": "완료",
"Warning": "주의",
"Danger": "위험",
@@ -353,9 +360,23 @@
"Insert current date": "현재 날짜 삽입",
"Draw and sketch excalidraw diagrams": "Excalidraw diagram 그리기 및 스케치",
"Multiple": "복제",
+ "Turn into": "변경하기",
+ "Text align": "텍스트 정렬",
+ "This page may have been deleted, moved, or you may not have access.": "이 페이지는 삭제되었거나 이동되었거나 접근 권한이 없을 수 있습니다.",
+ "Go to homepage": "홈으로 이동",
+ "Pages you create will show up here.": "여기에 생성한 페이지가 표시됩니다.",
"Heading {{level}}": "제목 {{level}}",
"Toggle title": "제목 토글",
"Write anything. Enter \"/\" for commands": "아무거나 입력하세요. 명령어를 사용하려면 \"/\"를 입력하세요",
+ "Write...": "작성...",
+ "Column count": "열 개수",
+ "{{count}} Columns": "{{count}}열",
+ "Equal columns": "열 너비 균등",
+ "Left sidebar": "왼쪽 사이드바",
+ "Right sidebar": "오른쪽 사이드바",
+ "Wide center": "가운데 넓게",
+ "Left wide": "왼쪽 넓게",
+ "Right wide": "오른쪽 넓게",
"Names do not match": "이름이 일치하지 않습니다",
"Today, {{time}}": "오늘, {{time}}",
"Yesterday, {{time}}": "어제, {{time}}",
@@ -378,6 +399,13 @@
"Delete member": "회원 삭제",
"Member deleted successfully": "멤버가 성공적으로 제거되었습니다",
"Are you sure you want to delete this workspace member? This action is irreversible.": "이 워크스페이스 멤버를 삭제하시겠습니까? 이 작업은 되돌릴 수 없습니다.",
+ "Deactivate member": "멤버 비활성화",
+ "Activate member": "멤버 활성화",
+ "Are you sure you want to deactivate this workspace member? They will no longer be able to access this workspace.": "이 워크스페이스 멤버를 비활성화하시겠습니까? 해당 사용자는 더 이상 이 워크스페이스에 접근할 수 없습니다.",
+ "Are you sure you want to activate this workspace member?": "이 워크스페이스 멤버를 활성화하시겠습니까?",
+ "Deactivate": "비활성화",
+ "Activate": "활성화",
+ "Deactivated": "비활성화됨",
"Move": "이동",
"Move page": "페이지 이동",
"Move page to a different space.": "페이지를 다른 공간으로 이동합니다.",
@@ -405,6 +433,23 @@
"Share deleted successfully": "공유가 성공적으로 삭제되었습니다",
"Share not found": "공유를 찾을 수 없습니다",
"Failed to share page": "페이지 공유에 실패했습니다",
+ "Disable public sharing": "공유 비활성화",
+ "Prevent members from sharing pages publicly.": "멤버들이 페이지를 공개적으로 공유하지 못하도록 방지하십시오.",
+ "Toggle public sharing": "공유 전환",
+ "Toggle space public sharing": "공간 공유 전환",
+ "Public sharing is disabled at the workspace level": "워크스페이스 수준에서 공유가 비활성화되었습니다.",
+ "Prevent pages in this space from being shared publicly.": "이 공간의 페이지가 공개적으로 공유되지 않도록 방지하십시오.",
+ "Requires an enterprise license": "기업 라이센스가 필요합니다.",
+ "Page permissions": "페이지 권한},{",
+ "Control who can view and edit individual pages. Available with an enterprise license.": "개별 페이지의 조회 및 편집 권한을 제어합니다. 엔터프라이즈 라이선스에서 이용 가능합니다.",
+ "Enable public sharing": "공유 활성화",
+ "Are you sure you want to enable public sharing? Members will be able to share pages publicly.": "공유를 활성화하시겠습니까? 멤버들이 페이지를 공개적으로 공유할 수 있게 됩니다.",
+ "Are you sure you want to disable public sharing? All existing shared links in this workspace will be deleted.": "정말로 공유를 비활성화하시겠습니까? 이 워크스페이스의 모든 기존 공유 링크가 삭제됩니다.",
+ "Are you sure you want to enable public sharing for this space?": "이 공간의 공유를 활성화하시겠습니까?",
+ "Are you sure you want to disable public sharing? All existing shared links in this space will be deleted.": "정말로 공유를 비활성화하시겠습니까? 이 공간의 모든 기존 공유 링크가 삭제됩니다.",
+ "Public sharing is disabled": "공유가 비활성화되었습니다.",
+ "Public sharing has been disabled at the workspace level.": "워크스페이스 수준에서 공유가 비활성화되었습니다.",
+ "Public sharing has been disabled for this space.": "이 공간의 공유가 비활성화되었습니다.",
"Copy page": "페이지 복사하기",
"Copy page to a different space.": "다른 공간으로 페이지 복사하기.",
"Page copied successfully": "페이지가 성공적으로 복사되었습니다",
@@ -487,7 +532,7 @@
"Enter one of your backup codes. Each backup code can only be used once.": "백업 코드 중 하나를 입력하세요. 각 백업 코드는 한 번만 사용할 수 있습니다.",
"Verify": "확인",
"Trash": "휴지통",
- "Pages in trash will be permanently deleted after 30 days.": "휴지통의 페이지는 30일 후에 영구적으로 삭제됩니다.",
+ "Pages in trash will be permanently deleted after {{count}} days.": "휴지통의 페이지는 {{count}}일 후 영구적으로 삭제됩니다.",
"Deleted": "삭제됨",
"No pages in trash": "휴지통에 페이지가 없습니다",
"Permanently delete page?": "페이지를 영구적으로 삭제하시겠습니까?",
@@ -559,19 +604,94 @@
"This action cannot be undone. Any applications using this API key will stop working.": "이 작업은 되돌릴 수 없습니다. 이 API 키를 사용하는 모든 응용 프로그램이 작동을 멈출 것입니다.",
"Update API key": "API 키 갱신",
"Manage API keys for all users in the workspace": "워크스페이스 내 모든 사용자의 API 키 관리",
+ "Restrict API key creation to admins": "API 키 생성 권한을 관리자에게만 제한합니다",
+ "Only admins and owners can create new API keys. Existing member keys will continue to work.": "새로운 API 키는 관리자와 소유자만 생성할 수 있습니다. 기존 멤버 키는 계속 사용할 수 있습니다.",
+ "Toggle restrict API keys to admins": "API 키 생성 제한(관리자 전용) 설정 전환",
+ "API key creation is restricted to admins by your workspace administrator.": "API 키 생성이 워크스페이스 관리자로 인해 관리자에게만 제한되었습니다.",
"AI settings": "AI 설정",
"AI search": "AI 검색",
"AI Answer": "AI 답변",
"Ask AI": "AI에게 묻기",
"AI is thinking...": "AI가 생각 중입니다...",
"Ask a question...": "질문하세요...",
- "AI-powered search (Ask AI)": "AI 지원 검색 (AI에게 묻기)",
+ "AI Answers": "AI 답변",
+ "AI-powered search (AI Answers)": "AI 구동 검색 (AI 답변)",
"AI search uses vector embeddings to provide semantic search capabilities across your workspace content.": "AI 검색은 벡터 임베딩을 사용하여 작업공간 콘텐츠에 대한 의미 검색 기능을 제공합니다.",
"Toggle AI search": "AI 검색 전환",
+ "Generative AI (Ask AI)": "생성 AI (Ask AI)",
+ "Enable AI-powered content generation in the editor. Allows users to generate, improve, translate and transform text.": "편집기에서 AI 구동 콘텐츠 생성을 활성화합니다. 사용자가 텍스트를 생성, 개선, 번역 및 변환할 수 있습니다.",
+ "Toggle generative AI": "생성 AI 토글",
+ "Enterprise feature": "엔터프라이즈 기능",
+ "AI is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "AI는 Docmost 엔터프라이즈 에디션에서만 제공됩니다. sales@docmost.com으로 문의하세요.",
+ "AI & MCP": "AI 및 MCP",
+ "AI": "AI",
+ "MCP": "MCP",
+ "Model Context Protocol (MCP)": "모델 컨텍스트 프로토콜(MCP)",
+ "Enable the MCP server to allow AI assistants and tools to interact with your workspace content.": "AI 어시스턴트와 도구가 워크스페이스 콘텐츠와 상호작용할 수 있도록 MCP 서버를 활성화하세요.",
+ "MCP is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "MCP는 Docmost 엔터프라이즈 에디션에서만 제공됩니다. sales@docmost.com으로 문의하세요.",
+ "MCP documentation": "MCP 문서",
+ "MCP Server URL": "MCP 서버 URL",
+ "Use your API key for authentication. You can manage API keys in your account settings.": "인증을 위해 API 키를 사용하세요. API 키는 계정 설정에서 관리할 수 있습니다.",
+ "Supported tools": "지원되는 도구",
+ "Your workspace has MCP enabled. Use your API key to connect AI assistants.": "워크스페이스에 MCP가 활성화되어 있습니다. AI 어시스턴트를 연결하려면 API 키를 사용하세요.",
+ "MCP server URL:": "MCP 서버 URL:",
+ "Learn more": "자세히 알아보기",
+ "View the": "다음을",
+ "for usage details.": "에서 사용 방법을 확인하세요.",
+ "for setup instructions.": "에서 설정 지침을 확인하세요.",
+ "API documentation": "API 문서",
"Sources": "출처",
- "Ask AI not available for attachments": "AI에게 묻기 기능은 첨부 파일에 대해 사용할 수 없습니다",
+ "AI Answers not available for attachments": "첨부 파일에 대해 AI 답변을 사용할 수 없습니다",
"No answer available": "답변을 제공할 수 없습니다",
"Background color": "배경 색",
"Highlight color": "강조 색",
- "Remove color": "색 제거"
+ "Remove color": "색 제거",
+ "Notifications": "알림",
+ "No notifications": "알림 없음",
+ "No unread notifications": "읽지 않은 알림 없음",
+ "All notifications": "모든 알림",
+ "Unread only": "읽지 않음만",
+ "Mark all as read": "모두 읽음으로 표시",
+ "Mark as read": "읽음으로 표시",
+ "More options": "추가 옵션",
+ "mentioned you in a comment": "댓글에서 당신을 언급했습니다",
+ "commented on a page": "페이지에 댓글을 달았습니다",
+ "resolved a comment": "댓글을 해결했습니다",
+ "mentioned you on a page": "페이지에서 당신을 언급했습니다",
+ "gave you edit access to a page": "페이지 편집 권한을 부여했습니다",
+ "gave you view access to a page": "페이지 보기 권한을 부여했습니다",
+ "Today": "오늘",
+ "Yesterday": "어제",
+ "This week": "이번 주",
+ "Older": "이전",
+ "Restricted page": "제한된 페이지",
+ "Restricted pages cannot be shared publicly.": "제한된 페이지는 공개적으로 공유할 수 없습니다.",
+ "Restricted by parent": "상위 페이지에 의해 제한됨",
+ "Restricted": "제한됨",
+ "Open": "공개",
+ "Inherits restrictions from ancestor page": "상위 페이지로부터 제한을 상속함",
+ "Only people listed below can access this page": "아래에 나열된 사용자만 이 페이지에 접근할 수 있습니다.",
+ "Everyone in this space can access": "이 공간의 모든 사용자가 접근할 수 있습니다.",
+ "No additional restrictions on this page": "이 페이지에는 추가 제한이 없습니다.",
+ "Only specific people can access": "특정 사용자만 접근할 수 있습니다.",
+ "Use only inherited restrictions": "상속된 제한만 사용",
+ "Add restrictions on top of inherited": "상속된 제한 위에 추가 제한 적용",
+ "Inherited restriction": "상속된 제한",
+ "Access limited by": "접근 제한:",
+ "Restrict access to control who can view and edit this page": "이 페이지를 누가 조회하고 편집할 수 있는지 제어하려면 접근을 제한하세요.",
+ "Add additional restrictions specific to this page": "이 페이지에 대한 추가 제한을 적용하세요.",
+ "Access": "접근",
+ "People with access": "접근 권한이 있는 사용자",
+ "Remove all": "모두 제거",
+ "Remove access": "접근 권한 제거",
+ "Remove all access": "모든 접근 권한 제거",
+ "Are you sure you want to remove this member's access to the page?": "이 멤버의 페이지 접근 권한을 제거하시겠습니까?",
+ "Are you sure you want to remove all specific access? This will make the page open to everyone in the space.": "모든 특정 접근 권한을 제거하시겠습니까? 이렇게 하면 페이지가 공간의 모든 사용자에게 공개됩니다.",
+ "Trash retention": "휴지통 보관 기간",
+ "Pages in trash will be permanently deleted after this period.": "이 기간이 지나면 휴지통의 페이지는 영구적으로 삭제됩니다.",
+ "Trash retention updated": "휴지통 보관 기간이 업데이트되었습니다.",
+ "Failed to update trash retention": "휴지통 보관 기간 업데이트에 실패했습니다.",
+ "Removed page restriction": "페이지 제한이 제거됨",
+ "Added page permission": "페이지 권한이 추가됨",
+ "Removed page permission": "페이지 권한이 제거됨"
}
diff --git a/apps/client/public/locales/nl-NL/translation.json b/apps/client/public/locales/nl-NL/translation.json
index a7923b98..eb414753 100644
--- a/apps/client/public/locales/nl-NL/translation.json
+++ b/apps/client/public/locales/nl-NL/translation.json
@@ -116,6 +116,7 @@
"No group found": "Geen groep gevonden",
"No page history saved yet.": "Er is nog geen pagina geschiedenis opgeslagen.",
"No pages yet": "Nog geen pagina's",
+ "No shared pages": "Geen gedeelde pagina's",
"No results found...": "Geen resultaten gevonden...",
"No user found": "Geen gebruiker gevonden",
"Overview": "Overzicht",
@@ -123,11 +124,14 @@
"page": "pagina",
"Page deleted successfully": "Pagina succesvol verwijderd",
"Page history": "Pagina geschiedenis",
+ "Select version": "Selecteer versie",
+ "Highlight changes": "Wijzigingen markeren",
"Page import is in progress. Please do not close this tab.": "Importeren van pagina's is bezig. Sluit dit tabblad niet.",
"Pages": "Pagina's",
"pages": "pagina's",
"Password": "Wachtwoord",
"Password changed successfully": "Wachtwoord met succes gewijzigd",
+ "People": "Personen",
"Pending": "Wachtende",
"Please confirm your action": "Bevestig alstublieft uw actie",
"Preferences": "Voorkeuren",
@@ -205,6 +209,9 @@
"Reply...": "Antwoord...",
"Error loading comments.": "Fout bij het laden van reacties.",
"No comments yet.": "Nog geen reacties.",
+ "No open comments.": "Geen openstaande opmerkingen.",
+ "No resolved comments.": "Geen opgeloste reacties.",
+ "Add a comment...": "Voeg een opmerking toe...",
"Edit comment": "Bewerk reactie",
"Delete comment": "Verwijder reactie",
"Are you sure you want to delete this comment?": "Weet je zeker dat je deze reactie wilt verwijderen?",
@@ -226,7 +233,6 @@
"Are you sure you want to unresolve this comment thread?": "Weet u zeker dat u deze reactiedraad niet wilt oplossen?",
"Resolved": "Opgelost",
"No active comments.": "Geen actieve reacties.",
- "No resolved comments.": "Geen opgeloste reacties.",
"Revoke invitation": "Uitnodiging intrekken",
"Revoke": "Intrekken",
"Don't": "Niet doen",
@@ -272,6 +278,7 @@
"Add row below": "Rij hieronder toevoegen",
"Delete table": "Verwijder tabel",
"Info": "Info",
+ "Note": "Opmerking",
"Success": "Geslaagd",
"Warning": "Waarschuwing",
"Danger": "Gevaar",
@@ -353,9 +360,23 @@
"Insert current date": "Huidige datum invoeren",
"Draw and sketch excalidraw diagrams": "Teken en schets excalidraw diagrammen",
"Multiple": "Meerdere",
+ "Turn into": "Omzetten naar",
+ "Text align": "Tekstuitlijning",
+ "This page may have been deleted, moved, or you may not have access.": "Deze pagina is mogelijk verwijderd of verplaatst, of u heeft er geen toegang toe.",
+ "Go to homepage": "Ga naar de startpagina",
+ "Pages you create will show up here.": "Pagina's die u aanmaakt, verschijnen hier.",
"Heading {{level}}": "Kop {{level}}",
"Toggle title": "Schakel titel in/uit",
"Write anything. Enter \"/\" for commands": "Schrijf iets. Voer \"/\" in voor commando's",
+ "Write...": "Typ...",
+ "Column count": "Aantal kolommen",
+ "{{count}} Columns": "{{count}} kolommen",
+ "Equal columns": "Gelijke kolommen",
+ "Left sidebar": "Linker zijbalk",
+ "Right sidebar": "Rechter zijbalk",
+ "Wide center": "Brede middenkolom",
+ "Left wide": "Brede linkerkolom",
+ "Right wide": "Brede rechterkolom",
"Names do not match": "Namen komen niet overeen",
"Today, {{time}}": "Vandaag, {{time}}",
"Yesterday, {{time}}": "Gisteren, {{time}}",
@@ -378,6 +399,13 @@
"Delete member": "Verwijder lid",
"Member deleted successfully": "Lid succesvol verwijderd",
"Are you sure you want to delete this workspace member? This action is irreversible.": "Weet u zeker dat u dit lid van de werkruimte wilt verwijderen? Deze actie kan niet ongedaan gemaakt worden.",
+ "Deactivate member": "Lid deactiveren",
+ "Activate member": "Lid activeren",
+ "Are you sure you want to deactivate this workspace member? They will no longer be able to access this workspace.": "Weet u zeker dat u dit lid van de werkruimte wilt deactiveren? Deze persoon heeft daarna geen toegang meer tot deze werkruimte.",
+ "Are you sure you want to activate this workspace member?": "Weet u zeker dat u dit lid van de werkruimte wilt activeren?",
+ "Deactivate": "Deactiveren",
+ "Activate": "Activeren",
+ "Deactivated": "Gedeactiveerd",
"Move": "Verplaatsen",
"Move page": "Pagina verplaatsen",
"Move page to a different space.": "Verplaats pagina naar een andere ruimte.",
@@ -405,6 +433,23 @@
"Share deleted successfully": "Delen succesvol verwijderd",
"Share not found": "Delen niet gevonden",
"Failed to share page": "Pagina delen mislukt",
+ "Disable public sharing": "Openbaar delen uitschakelen",
+ "Prevent members from sharing pages publicly.": "Voorkom dat leden pagina's openbaar delen.",
+ "Toggle public sharing": "Wissel openbaar delen",
+ "Toggle space public sharing": "Wissel openbaar delen van ruimte",
+ "Public sharing is disabled at the workspace level": "Openbaar delen is uitgeschakeld op werkruimteniveau",
+ "Prevent pages in this space from being shared publicly.": "Voorkom dat pagina's in deze ruimte openbaar worden gedeeld.",
+ "Requires an enterprise license": "Vereist een bedrijfslicentie",
+ "Page permissions": "Pagina rechten",
+ "Control who can view and edit individual pages. Available with an enterprise license.": "Beheer wie individuele pagina's kan bekijken en bewerken. Beschikbaar met een Enterprise-licentie.",
+ "Enable public sharing": "Openbaar delen inschakelen",
+ "Are you sure you want to enable public sharing? Members will be able to share pages publicly.": "Weet je zeker dat je openbaar delen wilt inschakelen? Leden kunnen pagina's openbaar delen.",
+ "Are you sure you want to disable public sharing? All existing shared links in this workspace will be deleted.": "Weet je zeker dat je openbaar delen wilt uitschakelen? Alle bestaande gedeelde links in deze werkruimte zullen worden verwijderd.",
+ "Are you sure you want to enable public sharing for this space?": "Weet je zeker dat je openbaar delen voor deze ruimte wilt inschakelen?",
+ "Are you sure you want to disable public sharing? All existing shared links in this space will be deleted.": "Weet je zeker dat je openbaar delen wilt uitschakelen? Alle bestaande gedeelde links in deze ruimte zullen worden verwijderd.",
+ "Public sharing is disabled": "Openbaar delen is uitgeschakeld",
+ "Public sharing has been disabled at the workspace level.": "Openbaar delen is uitgeschakeld op werkruimteniveau.",
+ "Public sharing has been disabled for this space.": "Openbaar delen is uitgeschakeld voor deze ruimte.",
"Copy page": "Pagina kopiëren",
"Copy page to a different space.": "Kopieer pagina naar een andere ruimte.",
"Page copied successfully": "Pagina succesvol gekopieerd",
@@ -487,7 +532,7 @@
"Enter one of your backup codes. Each backup code can only be used once.": "Voer een van uw back-up codes in. Elke back-up code kan slechts één keer worden gebruikt.",
"Verify": "Verifiëren",
"Trash": "Prullenbak",
- "Pages in trash will be permanently deleted after 30 days.": "Pagina's in de prullenbak worden na 30 dagen permanent verwijderd.",
+ "Pages in trash will be permanently deleted after {{count}} days.": "Pagina's in de prullenbak worden na {{count}} dagen permanent verwijderd.",
"Deleted": "Verwijderd",
"No pages in trash": "Geen pagina's in de prullenbak",
"Permanently delete page?": "Pagina permanent verwijderen?",
@@ -559,19 +604,94 @@
"This action cannot be undone. Any applications using this API key will stop working.": "Deze actie kan niet ongedaan worden gemaakt. Alle toepassingen die deze API-sleutel gebruiken, zullen niet meer werken.",
"Update API key": "API-sleutel bijwerken",
"Manage API keys for all users in the workspace": "Beheer API-sleutels voor alle gebruikers in de werkruimte",
+ "Restrict API key creation to admins": "Beperk het aanmaken van API-sleutels tot beheerders.",
+ "Only admins and owners can create new API keys. Existing member keys will continue to work.": "Alleen beheerders en eigenaren kunnen nieuwe API-sleutels aanmaken. Bestaande leden-sleutels blijven werken.",
+ "Toggle restrict API keys to admins": "Schakel het beperken van API-sleutels tot beheerders in/uit",
+ "API key creation is restricted to admins by your workspace administrator.": "Het aanmaken van API-sleutels is door je werkruimtebeheerder beperkt tot beheerders.",
"AI settings": "AI-instellingen",
"AI search": "AI-zoekopdracht",
"AI Answer": "AI Antwoord",
"Ask AI": "Vraag AI",
"AI is thinking...": "AI is aan het nadenken...",
"Ask a question...": "Stel een vraag...",
- "AI-powered search (Ask AI)": "AI-ondersteunde zoekopdracht (Vraag AI)",
+ "AI Answers": "AI Antwoorden",
+ "AI-powered search (AI Answers)": "AI-gestuurde zoekopdracht (AI Antwoorden)",
"AI search uses vector embeddings to provide semantic search capabilities across your workspace content.": "AI-zoekopdracht maakt gebruik van vectorembeddings om semantische zoekmogelijkheden te bieden in uw werkruimte-inhoud.",
"Toggle AI search": "Schakel AI-zoekopdracht in/uit",
+ "Generative AI (Ask AI)": "Generatieve AI (Vraag het AI)",
+ "Enable AI-powered content generation in the editor. Allows users to generate, improve, translate and transform text.": "Schakel AI-gestuurde inhoudsgeneratie in de editor in. Hiermee kunnen gebruikers tekst genereren, verbeteren, vertalen en transformeren.",
+ "Toggle generative AI": "Generatieve AI schakelen",
+ "Enterprise feature": "Enterprise-functie",
+ "AI is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "AI is alleen beschikbaar in de Docmost Enterprise-editie. Neem contact op met sales@docmost.com.",
+ "AI & MCP": "AI & MCP",
+ "AI": "AI",
+ "MCP": "MCP",
+ "Model Context Protocol (MCP)": "Model Context Protocol (MCP)",
+ "Enable the MCP server to allow AI assistants and tools to interact with your workspace content.": "Schakel de MCP-server in zodat AI-assistenten en tools kunnen interageren met de inhoud van uw werkruimte.",
+ "MCP is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "MCP is alleen beschikbaar in de Docmost Enterprise-editie. Neem contact op met sales@docmost.com.",
+ "MCP documentation": "MCP-documentatie",
+ "MCP Server URL": "MCP-server-URL",
+ "Use your API key for authentication. You can manage API keys in your account settings.": "Gebruik uw API-sleutel voor authenticatie. U kunt API-sleutels beheren in uw accountinstellingen.",
+ "Supported tools": "Ondersteunde tools",
+ "Your workspace has MCP enabled. Use your API key to connect AI assistants.": "In uw werkruimte is MCP ingeschakeld. Gebruik uw API-sleutel om AI-assistenten te koppelen.",
+ "MCP server URL:": "MCP-server-URL:",
+ "Learn more": "Meer informatie",
+ "View the": "Bekijk de",
+ "for usage details.": "voor details over het gebruik.",
+ "for setup instructions.": "voor installatie-instructies.",
+ "API documentation": "API-documentatie",
"Sources": "Bronnen",
- "Ask AI not available for attachments": "Vraag AI is niet beschikbaar voor bijlages",
+ "AI Answers not available for attachments": "AI Antwoorden niet beschikbaar voor bijlagen",
"No answer available": "Geen antwoord beschikbaar",
"Background color": "Achtergrondkleur",
"Highlight color": "Markeerkleur",
- "Remove color": "Kleur verwijderen"
+ "Remove color": "Kleur verwijderen",
+ "Notifications": "Meldingen",
+ "No notifications": "Geen meldingen",
+ "No unread notifications": "Geen ongelezen meldingen",
+ "All notifications": "Alle meldingen",
+ "Unread only": "Alleen ongelezen",
+ "Mark all as read": "Markeer alles als gelezen",
+ "Mark as read": "Markeer als gelezen",
+ "More options": "Meer opties",
+ "mentioned you in a comment": "noemde je in een reactie",
+ "commented on a page": "reageerde op een pagina",
+ "resolved a comment": "heeft een opmerking opgelost",
+ "mentioned you on a page": "noemde je op een pagina",
+ "gave you edit access to a page": "heeft je toegang gegeven om een pagina te bewerken",
+ "gave you view access to a page": "heeft je toegang gegeven om een pagina te bekijken",
+ "Today": "Vandaag",
+ "Yesterday": "Gisteren",
+ "This week": "Deze week",
+ "Older": "Ouder",
+ "Restricted page": "Beperkte pagina",
+ "Restricted pages cannot be shared publicly.": "Beperkte pagina's kunnen niet openbaar worden gedeeld.",
+ "Restricted by parent": "Beperkt door bovenliggende",
+ "Restricted": "Beperkt",
+ "Open": "Open",
+ "Inherits restrictions from ancestor page": "Erft restricties van de bovenliggende pagina",
+ "Only people listed below can access this page": "Alleen onderstaande personen hebben toegang tot deze pagina",
+ "Everyone in this space can access": "Iedereen in deze ruimte heeft toegang",
+ "No additional restrictions on this page": "Geen aanvullende restricties op deze pagina",
+ "Only specific people can access": "Alleen specifieke personen hebben toegang",
+ "Use only inherited restrictions": "Gebruik alleen overgenomen restricties",
+ "Add restrictions on top of inherited": "Restricties toevoegen bovenop geërfd",
+ "Inherited restriction": "Overgenomen restrictie",
+ "Access limited by": "Toegang beperkt door",
+ "Restrict access to control who can view and edit this page": "Beperk de toegang om te bepalen wie deze pagina kan bekijken en bewerken",
+ "Add additional restrictions specific to this page": "Voeg extra beperkingen toe voor deze pagina",
+ "Access": "Toegang",
+ "People with access": "Personen die toegang",
+ "Remove all": "Alles verwijderen",
+ "Remove access": "Toegang verwijderen",
+ "Remove all access": "Alle toegang verwijderen",
+ "Are you sure you want to remove this member's access to the page?": "Weet u zeker dat u de toegang van dit lid tot de pagina wilt intrekken?",
+ "Are you sure you want to remove all specific access? This will make the page open to everyone in the space.": "Weet u zeker dat u alle specifieke toegang wilt verwijderen? Hiermee wordt de pagina voor iedereen in de ruimte beschikbaar.",
+ "Trash retention": "Bewaartermijn prullenbak",
+ "Pages in trash will be permanently deleted after this period.": "Pagina's in de prullenbak worden na deze periode permanent verwijderd.",
+ "Trash retention updated": "Bewaartermijn prullenbak bijgewerkt",
+ "Failed to update trash retention": "Bijwerken van de bewaartermijn voor de prullenbak is mislukt.",
+ "Removed page restriction": "Pagina-restrictie verwijderd",
+ "Added page permission": "Paginatoestemming toegevoegd",
+ "Removed page permission": "Paginatoestemming verwijderd"
}
diff --git a/apps/client/public/locales/pt-BR/translation.json b/apps/client/public/locales/pt-BR/translation.json
index 30cc0b21..961e9a8f 100644
--- a/apps/client/public/locales/pt-BR/translation.json
+++ b/apps/client/public/locales/pt-BR/translation.json
@@ -116,6 +116,7 @@
"No group found": "Nenhum grupo encontrado",
"No page history saved yet.": "Nenhum histórico de página salvo ainda.",
"No pages yet": "Nenhuma página ainda",
+ "No shared pages": "Sem páginas compartilhadas",
"No results found...": "Nenhum resultado encontrado...",
"No user found": "Nenhum usuário encontrado",
"Overview": "Visão geral",
@@ -123,11 +124,14 @@
"page": "página",
"Page deleted successfully": "Página excluída com sucesso",
"Page history": "Histórico da página",
+ "Select version": "Selecionar versão",
+ "Highlight changes": "Destacar alterações",
"Page import is in progress. Please do not close this tab.": "A importação da página está em andamento. Por favor, não feche esta aba.",
"Pages": "Páginas",
"pages": "páginas",
"Password": "Senha",
"Password changed successfully": "Senha alterada com sucesso",
+ "People": "Pessoas",
"Pending": "Pendente",
"Please confirm your action": "Por favor, confirme sua ação",
"Preferences": "Preferências",
@@ -205,6 +209,9 @@
"Reply...": "Responder...",
"Error loading comments.": "Erro ao carregar comentários.",
"No comments yet.": "Ainda sem comentários.",
+ "No open comments.": "Sem comentários em aberto.",
+ "No resolved comments.": "Sem comentários resolvidos.",
+ "Add a comment...": "Adicione um comentário...",
"Edit comment": "Editar comentário",
"Delete comment": "Excluir comentário",
"Are you sure you want to delete this comment?": "Você tem certeza de que deseja excluir este comentário?",
@@ -226,7 +233,6 @@
"Are you sure you want to unresolve this comment thread?": "Tem certeza de que deseja não resolver este fio de comentários?",
"Resolved": "Resolvido",
"No active comments.": "Sem comentários ativos.",
- "No resolved comments.": "Sem comentários resolvidos.",
"Revoke invitation": "Cancelar o convite",
"Revoke": "Anular",
"Don't": "Não",
@@ -272,6 +278,7 @@
"Add row below": "Adicionar linha abaixo",
"Delete table": "Excluir tabela",
"Info": "Informação",
+ "Note": "Observação",
"Success": "Sucesso",
"Warning": "Aviso",
"Danger": "Perigo",
@@ -353,9 +360,23 @@
"Insert current date": "Insira a data atual",
"Draw and sketch excalidraw diagrams": "Desenhe e esboce diagramas Excalidraw",
"Multiple": "Múltiplo",
+ "Turn into": "Transformar em",
+ "Text align": "Alinhar texto",
+ "This page may have been deleted, moved, or you may not have access.": "Esta página pode ter sido excluída, movida ou você pode não ter acesso a ela.",
+ "Go to homepage": "Ir para a página inicial",
+ "Pages you create will show up here.": "As páginas que você criar aparecerão aqui.",
"Heading {{level}}": "Título {{level}}",
"Toggle title": "Alternar título",
"Write anything. Enter \"/\" for commands": "Escreva qualquer coisa. Digite \"/\" para comandos",
+ "Write...": "Escreva...",
+ "Column count": "Número de colunas",
+ "{{count}} Columns": "{{count}} colunas",
+ "Equal columns": "Colunas iguais",
+ "Left sidebar": "Barra lateral esquerda",
+ "Right sidebar": "Barra lateral direita",
+ "Wide center": "Centro largo",
+ "Left wide": "Largo à esquerda",
+ "Right wide": "Largo à direita",
"Names do not match": "Os nomes não coincidem",
"Today, {{time}}": "Hoje, {{time}}",
"Yesterday, {{time}}": "Ontem, {{time}}",
@@ -378,6 +399,13 @@
"Delete member": "Excluir membro",
"Member deleted successfully": "Membro removido com sucesso",
"Are you sure you want to delete this workspace member? This action is irreversible.": "Você tem certeza que deseja deletar este membro do workspace? Esta ação é irreversível.",
+ "Deactivate member": "Desativar membro",
+ "Activate member": "Ativar membro",
+ "Are you sure you want to deactivate this workspace member? They will no longer be able to access this workspace.": "Tem certeza de que deseja desativar este membro do espaço de trabalho? Ele não poderá mais acessar este espaço de trabalho.",
+ "Are you sure you want to activate this workspace member?": "Tem certeza de que deseja ativar este membro do espaço de trabalho?",
+ "Deactivate": "Desativar",
+ "Activate": "Ativar",
+ "Deactivated": "Desativado",
"Move": "Mover",
"Move page": "Mover página",
"Move page to a different space.": "Mover página para um espaço diferente.",
@@ -405,6 +433,23 @@
"Share deleted successfully": "Compartilhamento excluído com sucesso",
"Share not found": "Compartilhamento não encontrado",
"Failed to share page": "Falha ao compartilhar página",
+ "Disable public sharing": "Desativar compartilhamento público",
+ "Prevent members from sharing pages publicly.": "Impedir que os membros compartilhem páginas publicamente.",
+ "Toggle public sharing": "Alternar compartilhamento público",
+ "Toggle space public sharing": "Alternar compartilhamento público do espaço",
+ "Public sharing is disabled at the workspace level": "O compartilhamento público está desativado no nível do espaço de trabalho",
+ "Prevent pages in this space from being shared publicly.": "Impedir que as páginas neste espaço sejam compartilhadas publicamente.",
+ "Requires an enterprise license": "Requer uma licença empresarial",
+ "Page permissions": "Permissões da página},{",
+ "Control who can view and edit individual pages. Available with an enterprise license.": "Controle quem pode visualizar e editar páginas individuais. Disponível com licença empresarial.",
+ "Enable public sharing": "Ativar compartilhamento público",
+ "Are you sure you want to enable public sharing? Members will be able to share pages publicly.": "Tem certeza de que deseja ativar o compartilhamento público? Os membros poderão compartilhar páginas publicamente.",
+ "Are you sure you want to disable public sharing? All existing shared links in this workspace will be deleted.": "Tem certeza de que deseja desativar o compartilhamento público? Todos os links compartilhados existentes neste espaço de trabalho serão excluídos.",
+ "Are you sure you want to enable public sharing for this space?": "Tem certeza de que deseja ativar o compartilhamento público para este espaço?",
+ "Are you sure you want to disable public sharing? All existing shared links in this space will be deleted.": "Tem certeza de que deseja desativar o compartilhamento público? Todos os links compartilhados existentes neste espaço serão excluídos.",
+ "Public sharing is disabled": "Compartilhamento público está desativado",
+ "Public sharing has been disabled at the workspace level.": "O compartilhamento público foi desativado no nível do espaço de trabalho.",
+ "Public sharing has been disabled for this space.": "O compartilhamento público foi desativado para este espaço.",
"Copy page": "Copiar página",
"Copy page to a different space.": "Copiar página para um espaço diferente.",
"Page copied successfully": "Página copiada com sucesso",
@@ -487,7 +532,7 @@
"Enter one of your backup codes. Each backup code can only be used once.": "Digite um de seus códigos de backup. Cada código de backup só pode ser usado uma vez.",
"Verify": "Verificar",
"Trash": "Lixeira",
- "Pages in trash will be permanently deleted after 30 days.": "Páginas na lixeira serão excluídas permanentemente após 30 dias.",
+ "Pages in trash will be permanently deleted after {{count}} days.": "{count, plural, one {A página na lixeira será excluída permanentemente após # dia.} other {As páginas na lixeira serão excluídas permanentemente após # dias.}}",
"Deleted": "Excluído",
"No pages in trash": "Sem páginas na lixeira",
"Permanently delete page?": "Excluir página permanentemente?",
@@ -559,19 +604,94 @@
"This action cannot be undone. Any applications using this API key will stop working.": "Esta ação não pode ser desfeita. Qualquer aplicação usando esta chave API deixará de funcionar.",
"Update API key": "Atualizar chave API",
"Manage API keys for all users in the workspace": "Gerenciar chaves API para todos os usuários no espaço de trabalho",
+ "Restrict API key creation to admins": "Restringir a criação de chave de API aos administradores",
+ "Only admins and owners can create new API keys. Existing member keys will continue to work.": "Somente administradores e proprietários podem criar novas chaves de API. As chaves de membros já existentes continuarão funcionando.",
+ "Toggle restrict API keys to admins": "Alternar restrição de chaves de API para administradores",
+ "API key creation is restricted to admins by your workspace administrator.": "A criação de chaves de API foi restringida aos administradores pelo administrador do seu workspace.",
"AI settings": "Configurações de IA",
"AI search": "Pesquisa IA",
"AI Answer": "Resposta de IA",
"Ask AI": "Pergunte à IA",
"AI is thinking...": "IA está pensando...",
"Ask a question...": "Faça uma pergunta...",
- "AI-powered search (Ask AI)": "Pesquisa com IA (Pergunte à IA)",
+ "AI Answers": "Respostas de IA",
+ "AI-powered search (AI Answers)": "Pesquisa com IA (Respostas de IA)",
"AI search uses vector embeddings to provide semantic search capabilities across your workspace content.": "A pesquisa IA usa vetores de incorporação para fornecer capacidades de pesquisa semântica em todo o conteúdo do seu espaço de trabalho.",
"Toggle AI search": "Alternar pesquisa de IA",
+ "Generative AI (Ask AI)": "IA generativa (Perguntar à IA)",
+ "Enable AI-powered content generation in the editor. Allows users to generate, improve, translate and transform text.": "Habilitar geração de conteúdo com IA no editor. Permite aos usuários gerar, melhorar, traduzir e transformar texto.",
+ "Toggle generative AI": "Alternar IA generativa",
+ "Enterprise feature": "Recurso empresarial",
+ "AI is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "A IA está disponível apenas na edição empresarial do Docmost. Contate sales@docmost.com.",
+ "AI & MCP": "IA e MCP",
+ "AI": "IA",
+ "MCP": "MCP",
+ "Model Context Protocol (MCP)": "Protocolo de Contexto de Modelo (MCP)",
+ "Enable the MCP server to allow AI assistants and tools to interact with your workspace content.": "Ative o servidor MCP para permitir que assistentes de IA e ferramentas interajam com o conteúdo do seu espaço de trabalho.",
+ "MCP is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "O MCP está disponível apenas na edição empresarial do Docmost. Contate sales@docmost.com.",
+ "MCP documentation": "Documentação do MCP",
+ "MCP Server URL": "URL do servidor MCP",
+ "Use your API key for authentication. You can manage API keys in your account settings.": "Use sua chave de API para autenticação. Você pode gerenciar chaves de API nas configurações da sua conta.",
+ "Supported tools": "Ferramentas compatíveis",
+ "Your workspace has MCP enabled. Use your API key to connect AI assistants.": "Seu espaço de trabalho tem MCP habilitado. Use sua chave de API para conectar assistentes de IA.",
+ "MCP server URL:": "URL do servidor MCP:",
+ "Learn more": "Saiba mais",
+ "View the": "Veja o",
+ "for usage details.": "para detalhes de uso.",
+ "for setup instructions.": "para instruções de configuração.",
+ "API documentation": "Documentação da API",
"Sources": "Fontes",
- "Ask AI not available for attachments": "Perguntar à IA não está disponível para anexos",
+ "AI Answers not available for attachments": "Respostas de IA não disponíveis para anexos",
"No answer available": "Nenhuma resposta disponível",
"Background color": "Cor de fundo",
"Highlight color": "Cor de destaque",
- "Remove color": "Remover cor"
+ "Remove color": "Remover cor",
+ "Notifications": "Notificações",
+ "No notifications": "Sem notificações",
+ "No unread notifications": "Sem notificações não lidas",
+ "All notifications": "Todas as notificações",
+ "Unread only": "Somente não lidas",
+ "Mark all as read": "Marcar todas como lidas",
+ "Mark as read": "Marcar como lida",
+ "More options": "Mais opções",
+ "mentioned you in a comment": "mencionou você em um comentário",
+ "commented on a page": "comentou em uma página",
+ "resolved a comment": "resolveu um comentário",
+ "mentioned you on a page": "mencionou você em uma página",
+ "gave you edit access to a page": "concedeu a você acesso para editar a página",
+ "gave you view access to a page": "concedeu a você acesso para visualizar a página",
+ "Today": "Hoje",
+ "Yesterday": "Ontem",
+ "This week": "Esta semana",
+ "Older": "Mais antigo",
+ "Restricted page": "Página restrita",
+ "Restricted pages cannot be shared publicly.": "Páginas restritas não podem ser compartilhadas publicamente.",
+ "Restricted by parent": "Restrita pela página pai",
+ "Restricted": "Restrito",
+ "Open": "Aberto",
+ "Inherits restrictions from ancestor page": "Herda restrições da página ancestral",
+ "Only people listed below can access this page": "Apenas as pessoas listadas abaixo podem acessar esta página",
+ "Everyone in this space can access": "Todos neste espaço podem acessar",
+ "No additional restrictions on this page": "Sem restrições adicionais nesta página",
+ "Only specific people can access": "Apenas pessoas específicas podem acessar",
+ "Use only inherited restrictions": "Usar apenas restrições herdadas",
+ "Add restrictions on top of inherited": "Adicionar restrições além das herdadas",
+ "Inherited restriction": "Restrição herdada",
+ "Access limited by": "Acesso limitado por",
+ "Restrict access to control who can view and edit this page": "Restringir o acesso para controlar quem pode visualizar e editar esta página",
+ "Add additional restrictions specific to this page": "Adicionar restrições adicionais específicas para esta página",
+ "Access": "Acesso",
+ "People with access": "Pessoas com acesso",
+ "Remove all": "Remover tudo",
+ "Remove access": "Remover acesso",
+ "Remove all access": "Remover todo o acesso",
+ "Are you sure you want to remove this member's access to the page?": "Tem certeza de que deseja remover o acesso deste membro à página?",
+ "Are you sure you want to remove all specific access? This will make the page open to everyone in the space.": "Tem certeza de que deseja remover todo o acesso específico? Isso fará com que a página fique aberta para todos no espaço.",
+ "Trash retention": "Retenção da lixeira",
+ "Pages in trash will be permanently deleted after this period.": "As páginas na lixeira serão excluídas permanentemente após este período.",
+ "Trash retention updated": "Retenção da lixeira atualizada",
+ "Failed to update trash retention": "Falha ao atualizar a retenção da lixeira",
+ "Removed page restriction": "Restrição de página removida",
+ "Added page permission": "Permissão de página adicionada",
+ "Removed page permission": "Permissão de página removida"
}
diff --git a/apps/client/public/locales/ru-RU/translation.json b/apps/client/public/locales/ru-RU/translation.json
index 88e1f701..e6a14df8 100644
--- a/apps/client/public/locales/ru-RU/translation.json
+++ b/apps/client/public/locales/ru-RU/translation.json
@@ -10,7 +10,7 @@
"Admin": "Администратор",
"Are you sure you want to delete this group? Members will lose access to resources this group has access to.": "Вы уверены, что хотите удалить эту группу? Участники потеряют доступ к материалам, к которым у этой группы есть доступ.",
"Are you sure you want to delete this page?": "Вы уверены, что хотите удалить эту страницу?",
- "Are you sure you want to remove this user from the group? The user will lose access to resources this group has access to.": "Вы уверены, что хотите удалить этого пользователя из группы? Пользователь потеряет доступ к материалам, к которым у этой группы есть доступ.",
+ "Are you sure you want to remove this user from the group? The user will lose access to resources this group has access to.": "Вы уверены, что хотите удалить этого пользователя из группы? Пользователь потеряет доступ к материалам, к которым есть доступ у этой группы.",
"Are you sure you want to remove this user from the space? The user will lose all access to this space.": "Вы уверены, что хотите удалить этого пользователя из пространства? Пользователь потеряет весь доступ к этому пространству.",
"Are you sure you want to restore this version? Any changes not versioned will be lost.": "Вы уверены, что хотите восстановить эту версию? Все не зафиксированные изменения будут потеряны.",
"Can become members of groups and spaces in workspace": "Могут становиться участниками групп и пространств в рабочей области",
@@ -116,6 +116,7 @@
"No group found": "Группа не найдена",
"No page history saved yet.": "История страниц ещё не сохранена.",
"No pages yet": "Страниц пока нет",
+ "No shared pages": "Нет общих страниц",
"No results found...": "Результаты не найдены...",
"No user found": "Пользователь не найден",
"Overview": "Обзор",
@@ -123,11 +124,14 @@
"page": "страница",
"Page deleted successfully": "Страница успешно удалена",
"Page history": "История страницы",
+ "Select version": "Выбрать версию",
+ "Highlight changes": "Выделить изменения",
"Page import is in progress. Please do not close this tab.": "Импорт страницы в процессе. Пожалуйста, не закрывайте эту вкладку.",
"Pages": "Страницы",
"pages": "страницы",
"Password": "Пароль",
"Password changed successfully": "Пароль успешно изменён",
+ "People": "Люди",
"Pending": "В ожидании",
"Please confirm your action": "Пожалуйста, подтвердите ваше действие",
"Preferences": "Настройки",
@@ -205,6 +209,9 @@
"Reply...": "Ответить...",
"Error loading comments.": "Ошибка при загрузке комментариев.",
"No comments yet.": "Комментариев пока нет.",
+ "No open comments.": "Нет открытых комментариев.",
+ "No resolved comments.": "Нет решённых комментариев.",
+ "Add a comment...": "Добавить комментарий...",
"Edit comment": "Редактировать комментарий",
"Delete comment": "Удалить комментарий",
"Are you sure you want to delete this comment?": "Вы уверены, что хотите удалить этот комментарий?",
@@ -226,7 +233,6 @@
"Are you sure you want to unresolve this comment thread?": "Вы уверены, что хотите отметить эту цепочку комментариев как нерешённую?",
"Resolved": "Решено",
"No active comments.": "Нет активных комментариев.",
- "No resolved comments.": "Нет решённых комментариев.",
"Revoke invitation": "Отозвать приглашение",
"Revoke": "Отозвать",
"Don't": "Нет",
@@ -272,6 +278,7 @@
"Add row below": "Добавить строку ниже",
"Delete table": "Удалить таблицу",
"Info": "Информация",
+ "Note": "Примечание",
"Success": "Успешно",
"Warning": "Предупреждение",
"Danger": "Важно",
@@ -353,9 +360,23 @@
"Insert current date": "Вставить текущую дату",
"Draw and sketch excalidraw diagrams": "Вставить и рисовать диаграммы Excalidraw",
"Multiple": "Несколько",
+ "Turn into": "Преобразовать в",
+ "Text align": "Выравнивание текста",
+ "This page may have been deleted, moved, or you may not have access.": "Эта страница могла быть удалена, перемещена, или у вас может отсутствовать доступ к ней.",
+ "Go to homepage": "Вернуться на главную",
+ "Pages you create will show up here.": "Созданные вами страницы появятся здесь.",
"Heading {{level}}": "Заголовок {{level}}",
"Toggle title": "Переключить заголовок",
"Write anything. Enter \"/\" for commands": "Начните писать. Введите \"/\" для списка команд",
+ "Write...": "Напишите...",
+ "Column count": "Количество столбцов",
+ "{{count}} Columns": "{count, plural, one{# столбец} few{# столбца} many{# столбцов} other{# столбца}}",
+ "Equal columns": "Равные столбцы",
+ "Left sidebar": "Левая боковая панель",
+ "Right sidebar": "Правая боковая панель",
+ "Wide center": "Широкий по центру",
+ "Left wide": "Широкий слева",
+ "Right wide": "Широкий справа",
"Names do not match": "Названия не совпадают",
"Today, {{time}}": "Сегодня, {{time}}",
"Yesterday, {{time}}": "Вчера, {{time}}",
@@ -378,6 +399,13 @@
"Delete member": "Удалить участника",
"Member deleted successfully": "Участник успешно удален",
"Are you sure you want to delete this workspace member? This action is irreversible.": "Вы уверены, что хотите удалить этого участника рабочей области? Это действие необратимо.",
+ "Deactivate member": "Деактивировать участника",
+ "Activate member": "Активировать участника",
+ "Are you sure you want to deactivate this workspace member? They will no longer be able to access this workspace.": "Вы уверены, что хотите деактивировать этого участника рабочего пространства? Они больше не смогут получить доступ к этому рабочему пространству.",
+ "Are you sure you want to activate this workspace member?": "Вы уверены, что хотите активировать этого участника рабочего пространства?",
+ "Deactivate": "Деактивировать",
+ "Activate": "Активировать",
+ "Deactivated": "Деактивирован",
"Move": "Переместить",
"Move page": "Переместить страницу",
"Move page to a different space.": "Переместите страницу в другое пространство.",
@@ -405,6 +433,23 @@
"Share deleted successfully": "Общий доступ успешно удален",
"Share not found": "Общий доступ не найден",
"Failed to share page": "Не удалось поделиться страницей",
+ "Disable public sharing": "Отключить общий доступ",
+ "Prevent members from sharing pages publicly.": "Запретить участникам делиться страницами публично.",
+ "Toggle public sharing": "Переключить общий доступ",
+ "Toggle space public sharing": "Переключить общий доступ для пространства",
+ "Public sharing is disabled at the workspace level": "Общий доступ отключен на уровне рабочего пространства",
+ "Prevent pages in this space from being shared publicly.": "Запретить делиться страницами в этом пространстве публично.",
+ "Requires an enterprise license": "Требуется корпоративная лицензия",
+ "Page permissions": "Права доступа к странице},{",
+ "Control who can view and edit individual pages. Available with an enterprise license.": "Контролируйте, кто может просматривать и редактировать отдельные страницы. Доступно при наличии лицензии Enterprise.",
+ "Enable public sharing": "Включить общий доступ",
+ "Are you sure you want to enable public sharing? Members will be able to share pages publicly.": "Вы уверены, что хотите включить общий доступ? Участники смогут делиться страницами публично.",
+ "Are you sure you want to disable public sharing? All existing shared links in this workspace will be deleted.": "Вы уверены, что хотите отключить общий доступ? Все существующие ссылки в этом рабочем пространстве будут удалены.",
+ "Are you sure you want to enable public sharing for this space?": "Вы уверены, что хотите включить общий доступ для этого пространства?",
+ "Are you sure you want to disable public sharing? All existing shared links in this space will be deleted.": "Вы уверены, что хотите отключить общий доступ? Все существующие ссылки в этом пространстве будут удалены.",
+ "Public sharing is disabled": "Общий доступ отключен",
+ "Public sharing has been disabled at the workspace level.": "Общий доступ был отключен на уровне рабочего пространства.",
+ "Public sharing has been disabled for this space.": "Общий доступ был отключен для этого пространства.",
"Copy page": "Копировать страницу",
"Copy page to a different space.": "Копировать страницу в другое пространство.",
"Page copied successfully": "Страница успешно скопирована",
@@ -487,7 +532,7 @@
"Enter one of your backup codes. Each backup code can only be used once.": "Введите один из ваших резервных кодов. Каждый резервный код можно использовать только один раз.",
"Verify": "Проверить",
"Trash": "Корзина",
- "Pages in trash will be permanently deleted after 30 days.": "Страницы в корзине будут окончательно удалены через 30 дней.",
+ "Pages in trash will be permanently deleted after {{count}} days.": "{count, plural, one {Страница в корзине будет окончательно удалена через # день.} few {Страницы в корзине будут окончательно удалены через # дня.} many {Страницы в корзине будут окончательно удалены через # дней.} other {Страницы в корзине будут окончательно удалены через # дней.}}",
"Deleted": "Удалено",
"No pages in trash": "В корзине нет страниц",
"Permanently delete page?": "Удалить страницу окончательно?",
@@ -559,19 +604,94 @@
"This action cannot be undone. Any applications using this API key will stop working.": "Это действие необратимо. Любые приложения, использующие этот API ключ, перестанут работать.",
"Update API key": "Обновить API ключ",
"Manage API keys for all users in the workspace": "Управлять API ключами для всех пользователей в рабочей области",
+ "Restrict API key creation to admins": "Ограничить создание API-ключей только администраторами.",
+ "Only admins and owners can create new API keys. Existing member keys will continue to work.": "Только администраторы и владельцы могут создавать новые API-ключи. Существующие ключи участников продолжат работать.",
+ "Toggle restrict API keys to admins": "Переключить ограничение создания API-ключей только для администраторов",
+ "API key creation is restricted to admins by your workspace administrator.": "Создание API-ключей ограничено администраторами вашего рабочего пространства.",
"AI settings": "Настройки ИИ",
"AI search": "Поиск ИИ",
"AI Answer": "Ответ ИИ",
"Ask AI": "Спросить ИИ",
"AI is thinking...": "ИИ обрабатывает запрос...",
"Ask a question...": "Задайте вопрос...",
- "AI-powered search (Ask AI)": "Поиск на базе ИИ (Спросить ИИ)",
+ "AI Answers": "Ответы ИИ",
+ "AI-powered search (AI Answers)": "Поиск на базе ИИ (Ответы ИИ)",
"AI search uses vector embeddings to provide semantic search capabilities across your workspace content.": "Поиск ИИ использует векторные встраивания для обеспечения семантического поиска по содержимому вашего рабочего пространства.",
"Toggle AI search": "Переключить поиск ИИ",
+ "Generative AI (Ask AI)": "Генеративный ИИ (Спросить ИИ)",
+ "Enable AI-powered content generation in the editor. Allows users to generate, improve, translate and transform text.": "Включите создание контента на базе ИИ в редакторе. Позволяет пользователям генерировать, улучшать, переводить и преобразовывать текст.",
+ "Toggle generative AI": "Переключить генеративный ИИ",
+ "Enterprise feature": "Корпоративная функция",
+ "AI is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "ИИ доступен только в корпоративной версии Docmost. Свяжитесь по адресу sales@docmost.com.",
+ "AI & MCP": "ИИ и MCP",
+ "AI": "ИИ",
+ "MCP": "MCP",
+ "Model Context Protocol (MCP)": "Протокол контекста модели (MCP)",
+ "Enable the MCP server to allow AI assistants and tools to interact with your workspace content.": "Включите сервер MCP, чтобы ИИ-ассистенты и инструменты могли взаимодействовать с содержимым вашего рабочего пространства.",
+ "MCP is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "MCP доступен только в корпоративной версии Docmost. Свяжитесь по адресу sales@docmost.com.",
+ "MCP documentation": "Документация MCP",
+ "MCP Server URL": "URL сервера MCP",
+ "Use your API key for authentication. You can manage API keys in your account settings.": "Используйте ваш API-ключ для аутентификации. Управлять API-ключами можно в настройках аккаунта.",
+ "Supported tools": "Поддерживаемые инструменты",
+ "Your workspace has MCP enabled. Use your API key to connect AI assistants.": "В вашем рабочем пространстве включён MCP. Используйте свой API-ключ для подключения ИИ-ассистентов.",
+ "MCP server URL:": "URL сервера MCP:",
+ "Learn more": "Подробнее",
+ "View the": "Просмотреть",
+ "for usage details.": "для подробностей использования.",
+ "for setup instructions.": "для инструкций по настройке.",
+ "API documentation": "Документация API",
"Sources": "Источники",
- "Ask AI not available for attachments": "Функция \"Спросить ИИ\" недоступна для вложений",
+ "AI Answers not available for attachments": "Ответы ИИ недоступны для вложений",
"No answer available": "Ответ недоступен",
"Background color": "Цвет фона",
"Highlight color": "Цвет выделения",
- "Remove color": "Удалить цвет"
+ "Remove color": "Удалить цвет",
+ "Notifications": "Уведомления",
+ "No notifications": "Нет уведомлений",
+ "No unread notifications": "Нет непрочитанных уведомлений",
+ "All notifications": "Все уведомления",
+ "Unread only": "Только непрочитанные",
+ "Mark all as read": "Отметить все как прочитанные",
+ "Mark as read": "Отметить как прочитанное",
+ "More options": "Больше возможностей",
+ "mentioned you in a comment": "упомянул вас в комментарии",
+ "commented on a page": "прокомментировал на странице",
+ "resolved a comment": "разрешил комментарий",
+ "mentioned you on a page": "упомянул вас на странице",
+ "gave you edit access to a page": "предоставил вам доступ на редактирование страницы",
+ "gave you view access to a page": "предоставил вам доступ для просмотра страницы",
+ "Today": "Сегодня",
+ "Yesterday": "Вчера",
+ "This week": "На этой неделе",
+ "Older": "Старше",
+ "Restricted page": "Страница с ограниченным доступом",
+ "Restricted pages cannot be shared publicly.": "Страницы с ограниченным доступом нельзя сделать общедоступными.",
+ "Restricted by parent": "Ограничено родительской страницей",
+ "Restricted": "Ограничено",
+ "Open": "Открыто",
+ "Inherits restrictions from ancestor page": "Наследует ограничения от родительской страницы",
+ "Only people listed below can access this page": "Доступ к этой странице имеют только перечисленные ниже пользователи",
+ "Everyone in this space can access": "Доступ имеют все участники этого пространства",
+ "No additional restrictions on this page": "На этой странице нет дополнительных ограничений",
+ "Only specific people can access": "Доступ имеют только определённые пользователи",
+ "Use only inherited restrictions": "Использовать только унаследованные ограничения",
+ "Add restrictions on top of inherited": "Добавить ограничения поверх унаследованных",
+ "Inherited restriction": "Унаследованное ограничение",
+ "Access limited by": "Доступ ограничен",
+ "Restrict access to control who can view and edit this page": "Ограничьте доступ, чтобы контролировать, кто может просматривать и редактировать эту страницу",
+ "Add additional restrictions specific to this page": "Добавить дополнительные ограничения, применимые только к этой странице",
+ "Access": "Доступ",
+ "People with access": "Пользователи с доступом",
+ "Remove all": "Удалить всё",
+ "Remove access": "Удалить доступ",
+ "Remove all access": "Удалить весь доступ",
+ "Are you sure you want to remove this member's access to the page?": "Вы уверены, что хотите удалить доступ этого участника к странице?",
+ "Are you sure you want to remove all specific access? This will make the page open to everyone in the space.": "Вы уверены, что хотите удалить все специальные права доступа? Это сделает страницу доступной всем участникам пространства.",
+ "Trash retention": "Срок хранения корзины",
+ "Pages in trash will be permanently deleted after this period.": "Страницы в корзине будут окончательно удалены по истечении этого срока.",
+ "Trash retention updated": "Срок хранения корзины обновлён",
+ "Failed to update trash retention": "Не удалось обновить срок хранения корзины",
+ "Removed page restriction": "Ограничение доступа к странице удалено",
+ "Added page permission": "Добавлено разрешение доступа к странице",
+ "Removed page permission": "Удалено разрешение доступа к странице"
}
diff --git a/apps/client/public/locales/uk-UA/translation.json b/apps/client/public/locales/uk-UA/translation.json
index e5cdaa40..83f96bb7 100644
--- a/apps/client/public/locales/uk-UA/translation.json
+++ b/apps/client/public/locales/uk-UA/translation.json
@@ -116,6 +116,7 @@
"No group found": "Групу не знайдено",
"No page history saved yet.": "Історія сторінок ще не збережена.",
"No pages yet": "Сторінок поки немає",
+ "No shared pages": "Немає спільних сторінок",
"No results found...": "Результати не знайдено...",
"No user found": "Користувача не знайдено",
"Overview": "Огляд",
@@ -123,11 +124,14 @@
"page": "сторінка",
"Page deleted successfully": "Сторінку успішно видалено",
"Page history": "Історія сторінки",
+ "Select version": "Вибрати версію",
+ "Highlight changes": "Підсвітити зміни",
"Page import is in progress. Please do not close this tab.": "Імпорт сторінки в процесі. Будь ласка, не закривайте цю вкладку.",
"Pages": "Сторінки",
"pages": "сторінки",
"Password": "Пароль",
"Password changed successfully": "Пароль успішно змінено",
+ "People": "Користувачі",
"Pending": "В очікуванні",
"Please confirm your action": "Будь ласка, підтвердіть вашу дію",
"Preferences": "Налаштування",
@@ -205,6 +209,9 @@
"Reply...": "Відповісти...",
"Error loading comments.": "Помилка при завантаженні коментарів.",
"No comments yet.": "Коментарів поки немає.",
+ "No open comments.": "Немає відкритих коментарів.",
+ "No resolved comments.": "Немає вирішених коментарів.",
+ "Add a comment...": "Додати коментар...",
"Edit comment": "Редагувати коментар",
"Delete comment": "Видалити коментар",
"Are you sure you want to delete this comment?": "Ви впевнені, що хочете видалити цей коментар?",
@@ -226,7 +233,6 @@
"Are you sure you want to unresolve this comment thread?": "Ви впевнені, що хочете розв'язати цей ланцюжок коментарів?",
"Resolved": "Вирішено",
"No active comments.": "Немає активних коментарів.",
- "No resolved comments.": "Немає вирішених коментарів.",
"Revoke invitation": "Відкликати запрошення",
"Revoke": "Відкликати",
"Don't": "Ні",
@@ -272,6 +278,7 @@
"Add row below": "Додати рядок нижче",
"Delete table": "Видалити таблицю",
"Info": "Інформація",
+ "Note": "Примітка",
"Success": "Успішно",
"Warning": "Попередження",
"Danger": "Важливо",
@@ -353,9 +360,23 @@
"Insert current date": "Вставити поточну дату",
"Draw and sketch excalidraw diagrams": "Вставити та малювати діаграми Excalidraw",
"Multiple": "Декілька",
+ "Turn into": "Перетворити",
+ "Text align": "Вирівнювання тексту",
+ "This page may have been deleted, moved, or you may not have access.": "Цю сторінку могли видалити, перемістити або у вас може не бути до неї доступу.",
+ "Go to homepage": "Перейти на головну",
+ "Pages you create will show up here.": "Сторінки, які ви створите, з'являться тут.",
"Heading {{level}}": "Заголовок {{level}}",
"Toggle title": "Перемкнути заголовок",
"Write anything. Enter \"/\" for commands": "Почніть писати. Введіть \"/\" для списку команд",
+ "Write...": "Напишіть...",
+ "Column count": "Кількість колонок",
+ "{{count}} Columns": "{count, plural, one{# колонка} few{# колонки} many{# колонок} other{# колонки}}",
+ "Equal columns": "Рівні колонки",
+ "Left sidebar": "Ліва бічна панель",
+ "Right sidebar": "Права бічна панель",
+ "Wide center": "Широка центральна колонка",
+ "Left wide": "Широка ліва колонка",
+ "Right wide": "Широка права колонка",
"Names do not match": "Назви не співпадають",
"Today, {{time}}": "Сьогодні, {{time}}",
"Yesterday, {{time}}": "Вчора, {{time}}",
@@ -378,6 +399,13 @@
"Delete member": "Видалити учасника",
"Member deleted successfully": "Учасника успішно видалено",
"Are you sure you want to delete this workspace member? This action is irreversible.": "Ви впевнені, що хочете видалити цього учасника робочої області? Ця дія незворотна.",
+ "Deactivate member": "Деактивувати учасника",
+ "Activate member": "Активувати учасника",
+ "Are you sure you want to deactivate this workspace member? They will no longer be able to access this workspace.": "Ви впевнені, що хочете деактивувати цього учасника робочого простору? Вони більше не зможуть отримати доступ до цього робочого простору.",
+ "Are you sure you want to activate this workspace member?": "Ви впевнені, що хочете активувати цього учасника робочого простору?",
+ "Deactivate": "Деактивувати",
+ "Activate": "Активувати",
+ "Deactivated": "Деактивовано",
"Move": "Перемістити",
"Move page": "Перемістити сторінку",
"Move page to a different space.": "Перемістити сторінку в інший простір.",
@@ -405,6 +433,23 @@
"Share deleted successfully": "Спільний доступ успішно видалено",
"Share not found": "Спільний доступ не знайдено",
"Failed to share page": "Не вдалося поділитися сторінкою",
+ "Disable public sharing": "Вимкнути публічний доступ",
+ "Prevent members from sharing pages publicly.": "Перешкодити учасникам публічно ділитися сторінками.",
+ "Toggle public sharing": "Перемикання публічного доступу",
+ "Toggle space public sharing": "Перемикання публічного доступу до просторів",
+ "Public sharing is disabled at the workspace level": "Публічний доступ вимкнуто на рівні робочого простору",
+ "Prevent pages in this space from being shared publicly.": "Перешкодити публічному поширенню сторінок у цьому просторі.",
+ "Requires an enterprise license": "Потребує корпоративної ліцензії",
+ "Page permissions": "Права доступу до сторінки.",
+ "Control who can view and edit individual pages. Available with an enterprise license.": "Керуйте тим, хто може переглядати та редагувати окремі сторінки. Доступно з корпоративною ліцензією.",
+ "Enable public sharing": "Увімкнути публічний доступ",
+ "Are you sure you want to enable public sharing? Members will be able to share pages publicly.": "Ви впевнені, що хочете увімкнути публічний доступ? Учасники зможуть публічно ділитися сторінками.",
+ "Are you sure you want to disable public sharing? All existing shared links in this workspace will be deleted.": "Ви впевнені, що хочете вимкнути публічний доступ? Усі існуючі посилання для спільного доступу в цьому робочому просторі будуть видалені.",
+ "Are you sure you want to enable public sharing for this space?": "Ви впевнені, що хочете увімкнути публічний доступ для цього простору?",
+ "Are you sure you want to disable public sharing? All existing shared links in this space will be deleted.": "Ви впевнені, що хочете вимкнути публічний доступ? Усі існуючі посилання для спільного доступу в цьому просторі будуть видалені.",
+ "Public sharing is disabled": "Публічний доступ вимкнуто",
+ "Public sharing has been disabled at the workspace level.": "Публічний доступ було вимкнено на рівні робочого простору.",
+ "Public sharing has been disabled for this space.": "Публічний доступ було вимкнено для цього простору.",
"Copy page": "Копіювати сторінки",
"Copy page to a different space.": "Скопіювати сторінку в інший простір.",
"Page copied successfully": "Сторінку успішно скопійовано",
@@ -487,7 +532,7 @@
"Enter one of your backup codes. Each backup code can only be used once.": "Введіть один з ваших резервних кодів. Кожен резервний код можна використовувати лише один раз.",
"Verify": "Перевірити",
"Trash": "Кошик",
- "Pages in trash will be permanently deleted after 30 days.": "Сторінки у кошику будуть остаточно видалені через 30 днів.",
+ "Pages in trash will be permanently deleted after {{count}} days.": "Сторінки в кошику будуть остаточно видалені через {count, plural, one{# день} few{# дні} many{# днів} other{# дня}}.",
"Deleted": "Видалено",
"No pages in trash": "Немає сторінок у кошику",
"Permanently delete page?": "Остаточно видалити сторінку?",
@@ -559,19 +604,94 @@
"This action cannot be undone. Any applications using this API key will stop working.": "Цю дію не можна скасувати. Будь-які додатки, що використовують цей ключ API, перестануть працювати.",
"Update API key": "Оновити ключ API",
"Manage API keys for all users in the workspace": "Керувати ключами API для всіх користувачів у робочій області",
+ "Restrict API key creation to admins": "Обмежити створення API-ключів лише для адміністраторів",
+ "Only admins and owners can create new API keys. Existing member keys will continue to work.": "Тільки адміністратори та власники можуть створювати нові API-ключі. Існуючі ключі учасників і надалі працюватимуть.",
+ "Toggle restrict API keys to admins": "Увімкнути або вимкнути обмеження створення API-ключів лише для адміністраторів",
+ "API key creation is restricted to admins by your workspace administrator.": "Створення API-ключів дозволено лише адміністраторам за налаштуванням адміністратора робочого простору.",
"AI settings": "Налаштування ШІ",
"AI search": "Пошук з ШІ",
"AI Answer": "Відповідь ШІ",
"Ask AI": "Запитати ШІ",
"AI is thinking...": "ШІ думає...",
"Ask a question...": "Задайте питання...",
- "AI-powered search (Ask AI)": "Пошук на базі ШІ (Запитати ШІ)",
+ "AI Answers": "Відповіді ШІ",
+ "AI-powered search (AI Answers)": "Пошук на базі ШІ (Відповіді ШІ)",
"AI search uses vector embeddings to provide semantic search capabilities across your workspace content.": "Пошук з ШІ використовує векторні вбудовування для надання можливостей семантичного пошуку у вашому робочому вмісті.",
"Toggle AI search": "Переключити пошук з ШІ",
+ "Generative AI (Ask AI)": "Генеративний ШІ (Запитати ШІ)",
+ "Enable AI-powered content generation in the editor. Allows users to generate, improve, translate and transform text.": "Увімкнути генерацію контенту за допомогою ШІ в редакторі. Дозволяє користувачам генерувати, покращувати, перекладати та трансформувати текст.",
+ "Toggle generative AI": "Переключити генеративний ШІ",
+ "Enterprise feature": "Функція корпоративної версії",
+ "AI is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "ШІ доступний лише в корпоративній редакції Docmost. Зверніться до sales@docmost.com.",
+ "AI & MCP": "ШІ та MCP",
+ "AI": "ШІ",
+ "MCP": "MCP",
+ "Model Context Protocol (MCP)": "Протокол контексту моделі (MCP)",
+ "Enable the MCP server to allow AI assistants and tools to interact with your workspace content.": "Увімкніть MCP‑сервер, щоб дозволити ШІ‑помічникам та інструментам взаємодіяти з вмістом вашого робочого простору.",
+ "MCP is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "MCP доступний лише в корпоративній редакції Docmost. Зверніться до sales@docmost.com.",
+ "MCP documentation": "Документація MCP",
+ "MCP Server URL": "URL сервера MCP",
+ "Use your API key for authentication. You can manage API keys in your account settings.": "Використовуйте свій API‑ключ для аутентифікації. Ви можете керувати API‑ключами в налаштуваннях облікового запису.",
+ "Supported tools": "Підтримувані інструменти",
+ "Your workspace has MCP enabled. Use your API key to connect AI assistants.": "У вашому робочому просторі MCP увімкнено. Використайте свій API‑ключ, щоб підключити ШІ‑помічників.",
+ "MCP server URL:": "URL сервера MCP:",
+ "Learn more": "Дізнатися більше",
+ "View the": "Переглянути",
+ "for usage details.": "для відомостей про використання.",
+ "for setup instructions.": "для інструкцій з налаштування.",
+ "API documentation": "Документація API",
"Sources": "Джерела",
- "Ask AI not available for attachments": "Запитати ШІ недоступно для вкладень",
+ "AI Answers not available for attachments": "Відповіді ШІ недоступні для вкладень",
"No answer available": "Відповідь недоступна",
"Background color": "Колір фону",
"Highlight color": "Колір підсвічування",
- "Remove color": "Видалити колір"
+ "Remove color": "Видалити колір",
+ "Notifications": "Сповіщення",
+ "No notifications": "Немає сповіщень",
+ "No unread notifications": "Немає непрочитаних сповіщень",
+ "All notifications": "Усі сповіщення",
+ "Unread only": "Тільки непрочитані",
+ "Mark all as read": "Позначити все як прочитане",
+ "Mark as read": "Позначити як прочитане",
+ "More options": "Більше опцій",
+ "mentioned you in a comment": "згадали вас у коментарі",
+ "commented on a page": "прокоментували на сторінці",
+ "resolved a comment": "вирішили коментар",
+ "mentioned you on a page": "згадали вас на сторінці",
+ "gave you edit access to a page": "надав вам доступ для редагування сторінки",
+ "gave you view access to a page": "надав вам доступ для перегляду сторінки",
+ "Today": "Сьогодні",
+ "Yesterday": "Вчора",
+ "This week": "Цього тижня",
+ "Older": "Старіші",
+ "Restricted page": "Сторінка з обмеженим доступом",
+ "Restricted pages cannot be shared publicly.": "Сторінки з обмеженим доступом не можна робити загальнодоступними.",
+ "Restricted by parent": "Обмежено батьківською сторінкою",
+ "Restricted": "Обмежено",
+ "Open": "Відкрита",
+ "Inherits restrictions from ancestor page": "Наслідує обмеження від батьківської сторінки",
+ "Only people listed below can access this page": "Доступ до цієї сторінки мають лише люди, вказані нижче.",
+ "Everyone in this space can access": "Усі в цьому просторі мають доступ",
+ "No additional restrictions on this page": "Додаткових обмежень на цій сторінці немає.",
+ "Only specific people can access": "Доступ мають лише конкретні особи.",
+ "Use only inherited restrictions": "Використовувати лише успадковані обмеження",
+ "Add restrictions on top of inherited": "Додати обмеження поверх успадкованих",
+ "Inherited restriction": "Успадковане обмеження",
+ "Access limited by": "Доступ обмежено через",
+ "Restrict access to control who can view and edit this page": "Обмежте доступ, щоб контролювати, хто може переглядати та редагувати цю сторінку.",
+ "Add additional restrictions specific to this page": "Додати додаткові обмеження для цієї сторінки.",
+ "Access": "Доступ",
+ "People with access": "Особи з доступом",
+ "Remove all": "Видалити все",
+ "Remove access": "Видалити доступ",
+ "Remove all access": "Видалити весь доступ",
+ "Are you sure you want to remove this member's access to the page?": "Ви впевнені, що хочете видалити доступ цього учасника до сторінки?",
+ "Are you sure you want to remove all specific access? This will make the page open to everyone in the space.": "Ви впевнені, що хочете видалити всі індивідуальні дозволи доступу? Це зробить сторінку доступною для всіх у просторі.",
+ "Trash retention": "Термін зберігання у кошику",
+ "Pages in trash will be permanently deleted after this period.": "Сторінки в кошику будуть остаточно видалені після цього періоду.",
+ "Trash retention updated": "Термін зберігання у кошику оновлено",
+ "Failed to update trash retention": "Не вдалося оновити термін зберігання у кошику",
+ "Removed page restriction": "Обмеження сторінки видалено",
+ "Added page permission": "Додано дозвіл на сторінку",
+ "Removed page permission": "Дозвіл на сторінку видалено"
}
diff --git a/apps/client/public/locales/zh-CN/translation.json b/apps/client/public/locales/zh-CN/translation.json
index a5eb84f1..95883800 100644
--- a/apps/client/public/locales/zh-CN/translation.json
+++ b/apps/client/public/locales/zh-CN/translation.json
@@ -116,6 +116,7 @@
"No group found": "未找到群组",
"No page history saved yet.": "尚未保存页面历史。",
"No pages yet": "暂无页面",
+ "No shared pages": "没有共享页面",
"No results found...": "未找到结果...",
"No user found": "未找到用户",
"Overview": "概览",
@@ -123,11 +124,14 @@
"page": "个页面",
"Page deleted successfully": "页面已成功删除",
"Page history": "页面历史",
+ "Select version": "选择版本",
+ "Highlight changes": "突出显示更改",
"Page import is in progress. Please do not close this tab.": "页面导入正在进行中。请不要关闭此标签页。",
"Pages": "页面",
"pages": "个页面",
"Password": "密码",
"Password changed successfully": "密码更改成功",
+ "People": "人员",
"Pending": "待定",
"Please confirm your action": "请确认您的操作",
"Preferences": "偏好设置",
@@ -205,6 +209,9 @@
"Reply...": "回复...",
"Error loading comments.": "加载评论时出错",
"No comments yet.": "目前还没有评论",
+ "No open comments.": "没有未解决的评论。",
+ "No resolved comments.": "没有已解决的评论。",
+ "Add a comment...": "添加评论...",
"Edit comment": "编辑评论",
"Delete comment": "删除评论",
"Are you sure you want to delete this comment?": "你确定要删除这条评论吗?",
@@ -226,7 +233,6 @@
"Are you sure you want to unresolve this comment thread?": "确定要取消解决此评论线程吗?",
"Resolved": "已解决",
"No active comments.": "没有活跃的评论。",
- "No resolved comments.": "没有已解决的评论。",
"Revoke invitation": "撤回邀请",
"Revoke": "撤销",
"Don't": "不要",
@@ -272,6 +278,7 @@
"Add row below": "在下方插入行",
"Delete table": "删除表格",
"Info": "信息",
+ "Note": "注意",
"Success": "成功",
"Warning": "警告",
"Danger": "危险",
@@ -353,9 +360,23 @@
"Insert current date": "插入当前日期",
"Draw and sketch excalidraw diagrams": "绘制 Excalidraw 图表",
"Multiple": "多个",
+ "Turn into": "变成",
+ "Text align": "文本对齐",
+ "This page may have been deleted, moved, or you may not have access.": "此页面可能已被删除、移动,或者您可能无权访问。{",
+ "Go to homepage": "前往首页",
+ "Pages you create will show up here.": "您创建的页面将显示在此处。",
"Heading {{level}}": "{{level}} 级标题",
"Toggle title": "切换标题",
"Write anything. Enter \"/\" for commands": "开始编写内容,输入 \"/\" 以使用指令",
+ "Write...": "写点内容...",
+ "Column count": "列数",
+ "{{count}} Columns": "{{count}} 列",
+ "Equal columns": "等宽列",
+ "Left sidebar": "左侧边栏",
+ "Right sidebar": "右侧边栏",
+ "Wide center": "中间加宽",
+ "Left wide": "左侧加宽",
+ "Right wide": "右侧加宽",
"Names do not match": "名称不匹配",
"Today, {{time}}": "今天,{{time}}",
"Yesterday, {{time}}": "昨天,{{time}}",
@@ -378,6 +399,13 @@
"Delete member": "删除成员",
"Member deleted successfully": "成员删除成功",
"Are you sure you want to delete this workspace member? This action is irreversible.": "您确定要删除此工作区成员吗?此操作不可逆。",
+ "Deactivate member": "停用成员",
+ "Activate member": "激活成员",
+ "Are you sure you want to deactivate this workspace member? They will no longer be able to access this workspace.": "您确定要停用此工作区成员吗?该成员将无法再访问此工作区。",
+ "Are you sure you want to activate this workspace member?": "您确定要激活此工作区成员吗?",
+ "Deactivate": "停用",
+ "Activate": "激活",
+ "Deactivated": "已停用",
"Move": "移动",
"Move page": "移动页面",
"Move page to a different space.": "将页面移动到不同的空间。",
@@ -405,6 +433,23 @@
"Share deleted successfully": "分享已成功删除",
"Share not found": "未找到分享",
"Failed to share page": "页面分享失败",
+ "Disable public sharing": "禁用公开分享",
+ "Prevent members from sharing pages publicly.": "阻止成员公开分享页面。",
+ "Toggle public sharing": "切换公开分享",
+ "Toggle space public sharing": "切换空间公开分享",
+ "Public sharing is disabled at the workspace level": "公开分享在工作区级别被禁用",
+ "Prevent pages in this space from being shared publicly.": "阻止此空间中的页面被公开分享。",
+ "Requires an enterprise license": "需要企业许可证",
+ "Page permissions": "页面权限},{",
+ "Control who can view and edit individual pages. Available with an enterprise license.": "控制谁可以查看和编辑单个页面。此功能在企业版许可下可用。",
+ "Enable public sharing": "启用公开分享",
+ "Are you sure you want to enable public sharing? Members will be able to share pages publicly.": "您确定要启用公开分享吗?成员将能够公开分享页面。",
+ "Are you sure you want to disable public sharing? All existing shared links in this workspace will be deleted.": "您确定要禁用公开分享吗?此工作区中的所有现有共享链接都将被删除。",
+ "Are you sure you want to enable public sharing for this space?": "您确定要为此空间启用公开分享吗?",
+ "Are you sure you want to disable public sharing? All existing shared links in this space will be deleted.": "您确定要禁用公开分享吗?此空间中的所有现有共享链接都将被删除。",
+ "Public sharing is disabled": "公开分享已被禁用",
+ "Public sharing has been disabled at the workspace level.": "公开分享已在工作区级别被禁用。",
+ "Public sharing has been disabled for this space.": "此空间的公开分享已被禁用。",
"Copy page": "复制页面",
"Copy page to a different space.": "将页面复制到不同的空间。",
"Page copied successfully": "页面复制成功",
@@ -487,7 +532,7 @@
"Enter one of your backup codes. Each backup code can only be used once.": "输入您的一个备份代码。每个备份代码只能使用一次。",
"Verify": "验证",
"Trash": "垃圾箱",
- "Pages in trash will be permanently deleted after 30 days.": "垃圾箱中的页面将在30天后被永久删除。",
+ "Pages in trash will be permanently deleted after {{count}} days.": "垃圾箱中的页面将在{{count}}天后被永久删除。",
"Deleted": "已删除",
"No pages in trash": "垃圾箱中没有页面",
"Permanently delete page?": "永久删除页面?",
@@ -559,19 +604,94 @@
"This action cannot be undone. Any applications using this API key will stop working.": "此操作无法撤销。使用此API密钥的任何应用程序将停止工作。",
"Update API key": "更新API密钥",
"Manage API keys for all users in the workspace": "管理工作空间中所有用户的API密钥",
+ "Restrict API key creation to admins": "仅限管理员创建 API 密钥。",
+ "Only admins and owners can create new API keys. Existing member keys will continue to work.": "只有管理员和所有者可以创建新的 API 密钥。现有成员密钥将继续有效。",
+ "Toggle restrict API keys to admins": "切换仅限管理员创建 API 密钥",
+ "API key creation is restricted to admins by your workspace administrator.": "API 密钥的创建已被您的工作区管理员限制为仅管理员可用。",
"AI settings": "AI设置",
"AI search": "AI搜索",
"AI Answer": "AI回答",
"Ask AI": "询问AI",
"AI is thinking...": "AI正在思考...",
"Ask a question...": "提问...",
- "AI-powered search (Ask AI)": "AI驱动的搜索(询问AI)",
+ "AI Answers": "AI答案",
+ "AI-powered search (AI Answers)": "AI驱动的搜索 (AI答案)",
"AI search uses vector embeddings to provide semantic search capabilities across your workspace content.": "AI搜索使用向量嵌入提供跨工作空间内容的语义搜索功能。",
"Toggle AI search": "切换AI搜索",
+ "Generative AI (Ask AI)": "生成型AI (询问AI)",
+ "Enable AI-powered content generation in the editor. Allows users to generate, improve, translate and transform text.": "在编辑器中启用AI驱动的内容生成。允许用户生成、改进、翻译和转换文本。",
+ "Toggle generative AI": "切换生成型AI",
+ "Enterprise feature": "企业版功能",
+ "AI is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "AI 仅在 Docmost 企业版中提供。请联系 sales@docmost.com。",
+ "AI & MCP": "AI 与 MCP",
+ "AI": "AI",
+ "MCP": "MCP",
+ "Model Context Protocol (MCP)": "模型上下文协议(MCP)",
+ "Enable the MCP server to allow AI assistants and tools to interact with your workspace content.": "启用 MCP 服务器以允许 AI 助手和工具与您的工作区内容交互。",
+ "MCP is only available in the Docmost enterprise edition. Contact sales@docmost.com.": "MCP 仅在 Docmost 企业版中提供。请联系 sales@docmost.com。",
+ "MCP documentation": "MCP 文档",
+ "MCP Server URL": "MCP 服务器 URL",
+ "Use your API key for authentication. You can manage API keys in your account settings.": "使用您的 API 密钥进行身份验证。您可以在账户设置中管理 API 密钥。",
+ "Supported tools": "支持的工具",
+ "Your workspace has MCP enabled. Use your API key to connect AI assistants.": "您的工作区已启用 MCP。使用您的 API 密钥连接 AI 助手。",
+ "MCP server URL:": "MCP 服务器 URL:",
+ "Learn more": "了解更多",
+ "View the": "查看",
+ "for usage details.": "以获取使用详情。",
+ "for setup instructions.": "以获取设置说明。",
+ "API documentation": "API 文档",
"Sources": "来源",
- "Ask AI not available for attachments": "附件不支持询问AI",
+ "AI Answers not available for attachments": "AI答案不适用于附件",
"No answer available": "无可用答案",
"Background color": "背景颜色",
"Highlight color": "突出显示颜色",
- "Remove color": "移除颜色"
+ "Remove color": "移除颜色",
+ "Notifications": "通知",
+ "No notifications": "没有通知",
+ "No unread notifications": "没有未读通知",
+ "All notifications": "所有通知",
+ "Unread only": "仅未读",
+ "Mark all as read": "标记所有为已读",
+ "Mark as read": "标记为已读",
+ "More options": "更多选项",
+ "mentioned you in a comment": "在评论中提到你",
+ "commented on a page": "在页面上评论",
+ "resolved a comment": "解决了一个评论",
+ "mentioned you on a page": "在页面上提到你",
+ "gave you edit access to a page": "已授予你编辑该页面的权限",
+ "gave you view access to a page": "已授予你查看该页面的权限",
+ "Today": "今天",
+ "Yesterday": "昨天",
+ "This week": "本周",
+ "Older": "较早",
+ "Restricted page": "受限页面",
+ "Restricted pages cannot be shared publicly.": "受限页面不能公开共享。",
+ "Restricted by parent": "受父页面限制",
+ "Restricted": "受限",
+ "Open": "公开",
+ "Inherits restrictions from ancestor page": "继承自上级页面的限制",
+ "Only people listed below can access this page": "只有下面列出的人可以访问此页面",
+ "Everyone in this space can access": "此空间中的所有人均可访问",
+ "No additional restrictions on this page": "此页面无额外限制",
+ "Only specific people can access": "仅特定人员可访问",
+ "Use only inherited restrictions": "仅使用继承的限制",
+ "Add restrictions on top of inherited": "在继承的限制之上添加限制",
+ "Inherited restriction": "继承的限制",
+ "Access limited by": "访问受限于",
+ "Restrict access to control who can view and edit this page": "限制访问以控制谁可以查看和编辑此页面",
+ "Add additional restrictions specific to this page": "为此页面添加额外的特定限制",
+ "Access": "访问",
+ "People with access": "有访问权限的人员",
+ "Remove all": "全部移除",
+ "Remove access": "移除访问权限",
+ "Remove all access": "移除所有访问权限",
+ "Are you sure you want to remove this member's access to the page?": "您确定要移除此成员对该页面的访问权限吗?",
+ "Are you sure you want to remove all specific access? This will make the page open to everyone in the space.": "您确定要删除所有特定访问权限吗?这将使该页面对该空间中的所有人开放。",
+ "Trash retention": "垃圾箱保留期",
+ "Pages in trash will be permanently deleted after this period.": "该期限结束后,垃圾箱中的页面将被永久删除。",
+ "Trash retention updated": "垃圾箱保留期已更新",
+ "Failed to update trash retention": "更新垃圾箱保留期失败",
+ "Removed page restriction": "已移除页面限制",
+ "Added page permission": "已添加页面权限",
+ "Removed page permission": "已移除页面权限"
}
diff --git a/apps/client/src/App.tsx b/apps/client/src/App.tsx
index e0df67a7..c290157c 100644
--- a/apps/client/src/App.tsx
+++ b/apps/client/src/App.tsx
@@ -14,7 +14,6 @@ import AccountPreferences from "@/pages/settings/account/account-preferences.tsx
import SpaceHome from "@/pages/space/space-home.tsx";
import PageRedirect from "@/pages/page/page-redirect.tsx";
import Layout from "@/components/layouts/global/layout.tsx";
-import { ErrorBoundary } from "react-error-boundary";
import InviteSignup from "@/pages/auth/invite-signup.tsx";
import ForgotPassword from "@/pages/auth/forgot-password.tsx";
import PasswordReset from "./pages/auth/password-reset";
@@ -38,6 +37,7 @@ import SpaceTrash from "@/pages/space/space-trash.tsx";
import UserApiKeys from "@/ee/api-key/pages/user-api-keys";
import WorkspaceApiKeys from "@/ee/api-key/pages/workspace-api-keys";
import AiSettings from "@/ee/ai/pages/ai-settings.tsx";
+import AuditLogs from "@/ee/audit/pages/audit-logs.tsx";
export default function App() {
const { t } = useTranslation();
@@ -84,13 +84,7 @@ export default function App() {
} />
{t("Failed to load page. An error occurred.")}>}
- >
-
-
- }
+ element={}
/>
@@ -109,6 +103,8 @@ export default function App() {
} />
} />
} />
+ } />
+ } />
{!isCloud() && } />}
{isCloud() && } />}
diff --git a/apps/client/src/components/common/avatar-uploader.tsx b/apps/client/src/components/common/avatar-uploader.tsx
index 0c83411c..8d9552f6 100644
--- a/apps/client/src/components/common/avatar-uploader.tsx
+++ b/apps/client/src/components/common/avatar-uploader.tsx
@@ -130,7 +130,7 @@ export default function AvatarUploader({
top: "50%",
left: "50%",
transform: "translate(-50%, -50%)",
- zIndex: 1000,
+ zIndex: 200,
}}
>
diff --git a/apps/client/src/components/common/copy-button.tsx b/apps/client/src/components/common/copy-button.tsx
new file mode 100644
index 00000000..eb0721d7
--- /dev/null
+++ b/apps/client/src/components/common/copy-button.tsx
@@ -0,0 +1,33 @@
+// Source: https://github.com/mantinedev/mantine/blob/master/packages/@mantine/core/src/components/CopyButton/CopyButton.tsx - MIT
+// modified to use the polyfilled clipboard api
+import React from "react";
+import { useClipboard } from "@/hooks/use-clipboard";
+import { useProps } from "@mantine/core";
+
+interface CopyButtonProps {
+ /** Children callback, provides current status and copy function as an argument */
+ children: (payload: { copied: boolean; copy: () => void }) => React.ReactNode;
+
+ /** Value that is copied to the clipboard when the button is clicked */
+ value: string;
+
+ /** Copied status timeout in ms @default `1000` */
+ timeout?: number;
+}
+
+const defaultProps = {
+ timeout: 1000,
+} satisfies Partial;
+
+export function CopyButton(props: CopyButtonProps) {
+ const { children, timeout, value, ...others } = useProps(
+ "CopyButton",
+ defaultProps,
+ props,
+ );
+ const clipboard = useClipboard({ timeout });
+ const copy = () => clipboard.copy(value);
+ return <>{children({ copy, copied: clipboard.copied, ...others })}>;
+}
+
+CopyButton.displayName = "@mantine/core/CopyButton";
diff --git a/apps/client/src/components/common/copy.tsx b/apps/client/src/components/common/copy.tsx
index efae5750..81a70771 100644
--- a/apps/client/src/components/common/copy.tsx
+++ b/apps/client/src/components/common/copy.tsx
@@ -1,4 +1,5 @@
-import { ActionIcon, CopyButton, Tooltip } from "@mantine/core";
+import { ActionIcon, Tooltip } from "@mantine/core";
+import { CopyButton } from "@/components/common/copy-button";
import { IconCheck, IconCopy } from "@tabler/icons-react";
import React from "react";
import { useTranslation } from "react-i18next";
diff --git a/apps/client/src/components/common/paginate.tsx b/apps/client/src/components/common/paginate.tsx
index d8e8106f..721c2f43 100644
--- a/apps/client/src/components/common/paginate.tsx
+++ b/apps/client/src/components/common/paginate.tsx
@@ -2,17 +2,17 @@ import { Button, Group } from "@mantine/core";
import { useTranslation } from "react-i18next";
export interface PagePaginationProps {
- currentPage: number;
hasPrevPage: boolean;
hasNextPage: boolean;
- onPageChange: (newPage: number) => void;
+ onPrev: () => void;
+ onNext: () => void;
}
export default function Paginate({
- currentPage,
hasPrevPage,
hasNextPage,
- onPageChange,
+ onPrev,
+ onNext,
}: PagePaginationProps) {
const { t } = useTranslation();
@@ -25,7 +25,7 @@ export default function Paginate({