fix(i18n): resolve merge conflicts from main - keep Spanish translations, restore zh translations
This commit is contained in:
+1
-1
@@ -1 +1 @@
|
||||
2026-03-12T21:44:42Z
|
||||
2026-03-13T07:54:39Z
|
||||
|
||||
@@ -10,6 +10,63 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
|
||||
<!-- version list -->
|
||||
|
||||
## v0.126.0 (2026-03-13)
|
||||
|
||||
### Documentation
|
||||
|
||||
- **changelog**: Update changelog [skip ci]
|
||||
([`fd4ea5c`](https://github.com/christianlouis/DocuElevate/commit/fd4ea5c71b4ac3204bb9cf21b115333c0db24927))
|
||||
|
||||
- **changelog**: Update changelog [skip ci]
|
||||
([`95af9ff`](https://github.com/christianlouis/DocuElevate/commit/95af9ffe5e493470caaf09dc784ba12f5d19a8e7))
|
||||
|
||||
- **changelog**: Update changelog [skip ci]
|
||||
([`ca88d7d`](https://github.com/christianlouis/DocuElevate/commit/ca88d7d4250b3b9ee384d05b53d854056c5eccb4))
|
||||
|
||||
- **routing**: Add routing rules documentation to API.md and UserGuide.md
|
||||
([`e95693d`](https://github.com/christianlouis/DocuElevate/commit/e95693d684076ef87c436840caf2c5aa4581456d))
|
||||
|
||||
### Features
|
||||
|
||||
- **routing**: Add conditional routing rules for document-to-pipeline assignment
|
||||
([`40d56f0`](https://github.com/christianlouis/DocuElevate/commit/40d56f0396b42754954cea03e4efa2e442121313))
|
||||
|
||||
### Refactoring
|
||||
|
||||
- **routing**: Address code review feedback - simplify list filter, fix docs example
|
||||
([`1e5e35a`](https://github.com/christianlouis/DocuElevate/commit/1e5e35a26af47db925f77514a3bfdbccf417c0f5))
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
### Documentation
|
||||
|
||||
- **changelog**: Update changelog [skip ci]
|
||||
([`95af9ff`](https://github.com/christianlouis/DocuElevate/commit/95af9ffe5e493470caaf09dc784ba12f5d19a8e7))
|
||||
|
||||
- **changelog**: Update changelog [skip ci]
|
||||
([`ca88d7d`](https://github.com/christianlouis/DocuElevate/commit/ca88d7d4250b3b9ee384d05b53d854056c5eccb4))
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
### Documentation
|
||||
|
||||
- **changelog**: Update changelog [skip ci]
|
||||
([`ca88d7d`](https://github.com/christianlouis/DocuElevate/commit/ca88d7d4250b3b9ee384d05b53d854056c5eccb4))
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
|
||||
## v0.125.1 (2026-03-12)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **i18n**: Sync de.json keys with en.json — add 26 missing keys to en.json and all language files
|
||||
([`d3349e6`](https://github.com/christianlouis/DocuElevate/commit/d3349e649ea1ef01d8afc62d9a92d00ba4aac3f8))
|
||||
|
||||
|
||||
## v0.125.0 (2026-03-12)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
+6
-6
@@ -1,10 +1,10 @@
|
||||
DocuElevate Build Information
|
||||
==============================
|
||||
Version: 0.125.0
|
||||
Build Date: 2026-03-12T21:44:42Z
|
||||
Git Commit: 4345d5128fe1d33f1342d05138f3d01c903bac0b
|
||||
Git Short SHA: 4345d51
|
||||
Version: 0.126.0
|
||||
Build Date: 2026-03-13T07:54:39Z
|
||||
Git Commit: 603bcaad6a06371ad4cb929672fd653c4d4e6cf0
|
||||
Git Short SHA: 603bcaa
|
||||
Git Branch: main
|
||||
Commit Date: 2026-03-12T22:44:13+01:00
|
||||
Build Timestamp: 2026-03-12T21:44:42Z
|
||||
Commit Date: 2026-03-13T08:54:20+01:00
|
||||
Build Timestamp: 2026-03-13T07:54:39Z
|
||||
==============================
|
||||
|
||||
@@ -34,6 +34,7 @@ from app.api.plans import router as plans_router
|
||||
from app.api.process import router as process_router
|
||||
from app.api.profile import router as profile_router
|
||||
from app.api.queue import router as queue_router
|
||||
from app.api.routing_rules import router as routing_rules_router
|
||||
from app.api.saved_searches import router as saved_searches_router
|
||||
from app.api.scheduled_jobs import router as scheduled_jobs_router
|
||||
from app.api.search import router as search_router
|
||||
@@ -85,6 +86,7 @@ router.include_router(onboarding_router)
|
||||
router.include_router(billing_router)
|
||||
router.include_router(pipelines_router)
|
||||
router.include_router(profile_router)
|
||||
router.include_router(routing_rules_router)
|
||||
router.include_router(imap_accounts_router)
|
||||
router.include_router(imap_profiles_router)
|
||||
router.include_router(integrations_router)
|
||||
|
||||
@@ -0,0 +1,468 @@
|
||||
"""Routing rules API endpoints.
|
||||
|
||||
Provides full CRUD for pipeline routing rules that conditionally assign
|
||||
documents to pipelines based on document properties (file type, category,
|
||||
metadata fields, size, etc.).
|
||||
|
||||
Rules are evaluated in ascending ``position`` order. The first rule whose
|
||||
condition matches wins and routes the document to the specified target
|
||||
pipeline. If no rule matches, the caller falls back to the owner's (or
|
||||
system) default pipeline.
|
||||
"""
|
||||
|
||||
import logging
|
||||
from typing import Annotated, Any
|
||||
|
||||
from fastapi import APIRouter, Body, Depends, HTTPException, Request, status
|
||||
from pydantic import BaseModel, Field
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from app.auth import require_login
|
||||
from app.database import get_db
|
||||
from app.models import Pipeline, PipelineRoutingRule
|
||||
from app.utils.routing_engine import (
|
||||
BUILTIN_FIELDS,
|
||||
VALID_OPERATORS,
|
||||
_evaluate_condition,
|
||||
_resolve_field,
|
||||
)
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
router = APIRouter(prefix="/routing-rules", tags=["routing-rules"])
|
||||
|
||||
DbSession = Annotated[Session, Depends(get_db)]
|
||||
|
||||
MAX_RULES_PER_OWNER = 100
|
||||
MAX_NAME_LENGTH = 255
|
||||
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Helpers
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
|
||||
def _get_user_id(request: Request) -> str:
|
||||
"""Return the authenticated user identifier."""
|
||||
user = getattr(request.state, "user", None)
|
||||
if user:
|
||||
if isinstance(user, dict):
|
||||
return user.get("sub", user.get("email", "anonymous"))
|
||||
return getattr(user, "sub", getattr(user, "email", "anonymous"))
|
||||
return "anonymous"
|
||||
|
||||
|
||||
def _is_admin(request: Request) -> bool:
|
||||
"""Return ``True`` when the current user has admin privileges."""
|
||||
user = getattr(request.state, "user", None)
|
||||
if not user:
|
||||
return False
|
||||
groups = user.get("groups", []) if isinstance(user, dict) else getattr(user, "groups", [])
|
||||
return "admin" in groups
|
||||
|
||||
|
||||
def _can_access_rule(rule: PipelineRoutingRule, user_id: str, admin: bool) -> bool:
|
||||
"""Check whether the user is allowed to read this rule."""
|
||||
if admin:
|
||||
return True
|
||||
return rule.owner_id == user_id
|
||||
|
||||
|
||||
def _can_write_rule(rule: PipelineRoutingRule, user_id: str, admin: bool) -> bool:
|
||||
"""Check whether the user is allowed to modify this rule."""
|
||||
if rule.owner_id is None:
|
||||
return admin
|
||||
return rule.owner_id == user_id
|
||||
|
||||
|
||||
def _validate_field(field: str) -> None:
|
||||
"""Raise 422 if the field name is invalid."""
|
||||
if field in BUILTIN_FIELDS:
|
||||
return
|
||||
if field.startswith("metadata.") and len(field) > len("metadata."):
|
||||
return
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_422_UNPROCESSABLE_ENTITY,
|
||||
detail=(
|
||||
f"Invalid field '{field}'. "
|
||||
f"Valid built-in fields: {sorted(BUILTIN_FIELDS)}. "
|
||||
"For AI metadata, use 'metadata.<key>'."
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
def _validate_operator(operator: str) -> None:
|
||||
"""Raise 422 if the operator is not recognised."""
|
||||
if operator not in VALID_OPERATORS:
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_422_UNPROCESSABLE_ENTITY,
|
||||
detail=f"Invalid operator '{operator}'. Valid operators: {sorted(VALID_OPERATORS)}",
|
||||
)
|
||||
|
||||
|
||||
def _serialize_rule(rule: PipelineRoutingRule) -> dict[str, Any]:
|
||||
"""Serialize a routing rule to a JSON-compatible dict."""
|
||||
return {
|
||||
"id": rule.id,
|
||||
"owner_id": rule.owner_id,
|
||||
"name": rule.name,
|
||||
"position": rule.position,
|
||||
"field": rule.field,
|
||||
"operator": rule.operator,
|
||||
"value": rule.value,
|
||||
"target_pipeline_id": rule.target_pipeline_id,
|
||||
"is_active": rule.is_active,
|
||||
"created_at": rule.created_at.isoformat() if rule.created_at else None,
|
||||
"updated_at": rule.updated_at.isoformat() if rule.updated_at else None,
|
||||
}
|
||||
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Pydantic request models
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
|
||||
class RoutingRuleCreate(BaseModel):
|
||||
"""Request body for creating a routing rule."""
|
||||
|
||||
name: str = Field(..., min_length=1, max_length=MAX_NAME_LENGTH)
|
||||
field: str = Field(..., min_length=1, max_length=255)
|
||||
operator: str = Field(..., min_length=1, max_length=50)
|
||||
value: str = Field(..., max_length=1024)
|
||||
target_pipeline_id: int
|
||||
position: int | None = None
|
||||
is_active: bool = True
|
||||
|
||||
|
||||
class RoutingRuleUpdate(BaseModel):
|
||||
"""Request body for updating a routing rule."""
|
||||
|
||||
name: str | None = Field(None, min_length=1, max_length=MAX_NAME_LENGTH)
|
||||
field: str | None = Field(None, min_length=1, max_length=255)
|
||||
operator: str | None = Field(None, min_length=1, max_length=50)
|
||||
value: str | None = Field(None, max_length=1024)
|
||||
target_pipeline_id: int | None = None
|
||||
position: int | None = None
|
||||
is_active: bool | None = None
|
||||
|
||||
|
||||
class RoutingRuleEvaluateRequest(BaseModel):
|
||||
"""Request body for dry-run rule evaluation."""
|
||||
|
||||
file_type: str | None = None
|
||||
filename: str | None = None
|
||||
size: int | None = None
|
||||
document_type: str | None = None
|
||||
metadata: dict[str, Any] | None = None
|
||||
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Endpoints
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
|
||||
@router.get("")
|
||||
@require_login
|
||||
def list_routing_rules(request: Request, db: DbSession) -> list[dict[str, Any]]:
|
||||
"""List all routing rules accessible by the current user.
|
||||
|
||||
Returns the user's own rules plus any system-wide rules (``owner_id=NULL``).
|
||||
Rules are sorted by position.
|
||||
"""
|
||||
user_id = _get_user_id(request)
|
||||
|
||||
rules = (
|
||||
db.query(PipelineRoutingRule)
|
||||
.filter((PipelineRoutingRule.owner_id == user_id) | (PipelineRoutingRule.owner_id.is_(None)))
|
||||
.order_by(
|
||||
PipelineRoutingRule.owner_id.is_(None).asc(),
|
||||
PipelineRoutingRule.position.asc(),
|
||||
)
|
||||
.all()
|
||||
)
|
||||
|
||||
return [_serialize_rule(r) for r in rules]
|
||||
|
||||
|
||||
@router.post("", status_code=status.HTTP_201_CREATED)
|
||||
@require_login
|
||||
def create_routing_rule(request: Request, db: DbSession, body: RoutingRuleCreate) -> dict[str, Any]:
|
||||
"""Create a new routing rule for the current user.
|
||||
|
||||
Returns:
|
||||
The created routing rule.
|
||||
|
||||
Raises:
|
||||
HTTPException 422: If the field or operator is invalid.
|
||||
HTTPException 404: If the target pipeline does not exist.
|
||||
HTTPException 409: If the maximum number of rules is reached.
|
||||
"""
|
||||
user_id = _get_user_id(request)
|
||||
|
||||
_validate_field(body.field)
|
||||
_validate_operator(body.operator)
|
||||
|
||||
# Verify target pipeline exists and is accessible.
|
||||
pipeline = db.query(Pipeline).filter(Pipeline.id == body.target_pipeline_id).first()
|
||||
if not pipeline:
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_404_NOT_FOUND,
|
||||
detail=f"Target pipeline {body.target_pipeline_id} not found",
|
||||
)
|
||||
|
||||
# Enforce per-owner limit.
|
||||
count = db.query(PipelineRoutingRule).filter(PipelineRoutingRule.owner_id == user_id).count()
|
||||
if count >= MAX_RULES_PER_OWNER:
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_409_CONFLICT,
|
||||
detail=f"Maximum of {MAX_RULES_PER_OWNER} routing rules per user reached",
|
||||
)
|
||||
|
||||
# Auto-assign position if not specified.
|
||||
position = body.position
|
||||
if position is None:
|
||||
max_pos = (
|
||||
db.query(PipelineRoutingRule.position)
|
||||
.filter(PipelineRoutingRule.owner_id == user_id)
|
||||
.order_by(PipelineRoutingRule.position.desc())
|
||||
.first()
|
||||
)
|
||||
position = (max_pos[0] + 1) if max_pos else 0
|
||||
|
||||
rule = PipelineRoutingRule(
|
||||
owner_id=user_id,
|
||||
name=body.name.strip(),
|
||||
position=position,
|
||||
field=body.field,
|
||||
operator=body.operator,
|
||||
value=body.value,
|
||||
target_pipeline_id=body.target_pipeline_id,
|
||||
is_active=body.is_active,
|
||||
)
|
||||
|
||||
try:
|
||||
db.add(rule)
|
||||
db.commit()
|
||||
db.refresh(rule)
|
||||
except Exception:
|
||||
db.rollback()
|
||||
logger.exception("Failed to create routing rule for user=%s", user_id)
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
|
||||
detail="Failed to create routing rule",
|
||||
)
|
||||
|
||||
logger.info("Routing rule created: id=%s, user=%s", rule.id, user_id)
|
||||
return _serialize_rule(rule)
|
||||
|
||||
|
||||
@router.get("/operators")
|
||||
def list_operators() -> dict[str, Any]:
|
||||
"""Return the list of supported operators and fields.
|
||||
|
||||
This is a public endpoint (no auth required) so that UIs can populate
|
||||
dropdowns without hard-coding the catalogue.
|
||||
"""
|
||||
return {
|
||||
"operators": sorted(VALID_OPERATORS),
|
||||
"builtin_fields": sorted(BUILTIN_FIELDS),
|
||||
"metadata_prefix": "metadata.",
|
||||
}
|
||||
|
||||
|
||||
@router.post("/evaluate")
|
||||
@require_login
|
||||
def evaluate_rules(request: Request, db: DbSession, body: RoutingRuleEvaluateRequest) -> dict[str, Any]:
|
||||
"""Dry-run rule evaluation against the provided document properties.
|
||||
|
||||
Returns the first matching rule and target pipeline (if any), or
|
||||
indicates that no rule matched (default pipeline will be used).
|
||||
"""
|
||||
user_id = _get_user_id(request)
|
||||
|
||||
doc_props: dict[str, Any] = {
|
||||
"file_type": body.file_type,
|
||||
"filename": body.filename,
|
||||
"size": body.size,
|
||||
"document_type": body.document_type,
|
||||
"metadata": body.metadata or {},
|
||||
}
|
||||
|
||||
rules = (
|
||||
db.query(PipelineRoutingRule)
|
||||
.filter(
|
||||
PipelineRoutingRule.is_active.is_(True),
|
||||
(PipelineRoutingRule.owner_id == user_id) | (PipelineRoutingRule.owner_id.is_(None)),
|
||||
)
|
||||
.order_by(
|
||||
PipelineRoutingRule.owner_id.is_(None).asc(),
|
||||
PipelineRoutingRule.position.asc(),
|
||||
)
|
||||
.all()
|
||||
)
|
||||
|
||||
for rule in rules:
|
||||
actual = _resolve_field(rule.field, doc_props)
|
||||
if _evaluate_condition(actual, rule.operator, rule.value):
|
||||
pipeline = db.query(Pipeline).filter(Pipeline.id == rule.target_pipeline_id).first()
|
||||
return {
|
||||
"matched": True,
|
||||
"rule": _serialize_rule(rule),
|
||||
"target_pipeline": {
|
||||
"id": pipeline.id,
|
||||
"name": pipeline.name,
|
||||
"is_active": pipeline.is_active,
|
||||
}
|
||||
if pipeline
|
||||
else None,
|
||||
}
|
||||
|
||||
return {"matched": False, "rule": None, "target_pipeline": None}
|
||||
|
||||
|
||||
@router.put("/reorder")
|
||||
@require_login
|
||||
def reorder_routing_rules(
|
||||
request: Request,
|
||||
db: DbSession,
|
||||
rule_ids: list[int] = Body(..., embed=True),
|
||||
) -> list[dict[str, Any]]:
|
||||
"""Reorder the caller's routing rules.
|
||||
|
||||
Expects a JSON body ``{"rule_ids": [3, 1, 2]}`` where the list
|
||||
contains the IDs of the caller's rules in the desired order.
|
||||
"""
|
||||
user_id = _get_user_id(request)
|
||||
|
||||
rules = (
|
||||
db.query(PipelineRoutingRule)
|
||||
.filter(PipelineRoutingRule.owner_id == user_id, PipelineRoutingRule.id.in_(rule_ids))
|
||||
.all()
|
||||
)
|
||||
|
||||
rule_map = {r.id: r for r in rules}
|
||||
|
||||
if len(rule_map) != len(rule_ids) or set(rule_map.keys()) != set(rule_ids):
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_422_UNPROCESSABLE_ENTITY,
|
||||
detail="rule_ids must contain exactly the IDs of your routing rules",
|
||||
)
|
||||
|
||||
for pos, rid in enumerate(rule_ids):
|
||||
rule_map[rid].position = pos
|
||||
|
||||
try:
|
||||
db.commit()
|
||||
except Exception:
|
||||
db.rollback()
|
||||
logger.exception("Failed to reorder routing rules for user=%s", user_id)
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
|
||||
detail="Failed to reorder routing rules",
|
||||
)
|
||||
|
||||
ordered = sorted(rules, key=lambda r: r.position)
|
||||
return [_serialize_rule(r) for r in ordered]
|
||||
|
||||
|
||||
@router.get("/{rule_id}")
|
||||
@require_login
|
||||
def get_routing_rule(rule_id: int, request: Request, db: DbSession) -> dict[str, Any]:
|
||||
"""Return a single routing rule by ID."""
|
||||
user_id = _get_user_id(request)
|
||||
admin = _is_admin(request)
|
||||
|
||||
rule = db.query(PipelineRoutingRule).filter(PipelineRoutingRule.id == rule_id).first()
|
||||
if not rule or not _can_access_rule(rule, user_id, admin):
|
||||
raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="Routing rule not found")
|
||||
|
||||
return _serialize_rule(rule)
|
||||
|
||||
|
||||
@router.put("/{rule_id}")
|
||||
@require_login
|
||||
def update_routing_rule(rule_id: int, request: Request, db: DbSession, body: RoutingRuleUpdate) -> dict[str, Any]:
|
||||
"""Update a routing rule.
|
||||
|
||||
Only the fields present in the request body are updated.
|
||||
"""
|
||||
user_id = _get_user_id(request)
|
||||
admin = _is_admin(request)
|
||||
|
||||
rule = db.query(PipelineRoutingRule).filter(PipelineRoutingRule.id == rule_id).first()
|
||||
if not rule or not _can_access_rule(rule, user_id, admin):
|
||||
raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="Routing rule not found")
|
||||
|
||||
if not _can_write_rule(rule, user_id, admin):
|
||||
raise HTTPException(status_code=status.HTTP_403_FORBIDDEN, detail="Cannot modify this rule")
|
||||
|
||||
if body.field is not None:
|
||||
_validate_field(body.field)
|
||||
rule.field = body.field
|
||||
|
||||
if body.operator is not None:
|
||||
_validate_operator(body.operator)
|
||||
rule.operator = body.operator
|
||||
|
||||
if body.value is not None:
|
||||
rule.value = body.value
|
||||
|
||||
if body.name is not None:
|
||||
rule.name = body.name.strip()
|
||||
|
||||
if body.target_pipeline_id is not None:
|
||||
pipeline = db.query(Pipeline).filter(Pipeline.id == body.target_pipeline_id).first()
|
||||
if not pipeline:
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_404_NOT_FOUND,
|
||||
detail=f"Target pipeline {body.target_pipeline_id} not found",
|
||||
)
|
||||
rule.target_pipeline_id = body.target_pipeline_id
|
||||
|
||||
if body.position is not None:
|
||||
rule.position = body.position
|
||||
|
||||
if body.is_active is not None:
|
||||
rule.is_active = body.is_active
|
||||
|
||||
try:
|
||||
db.commit()
|
||||
db.refresh(rule)
|
||||
except Exception:
|
||||
db.rollback()
|
||||
logger.exception("Failed to update routing rule id=%s", rule_id)
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
|
||||
detail="Failed to update routing rule",
|
||||
)
|
||||
|
||||
logger.info("Routing rule updated: id=%s, user=%s", rule_id, user_id)
|
||||
return _serialize_rule(rule)
|
||||
|
||||
|
||||
@router.delete("/{rule_id}", status_code=status.HTTP_204_NO_CONTENT)
|
||||
@require_login
|
||||
def delete_routing_rule(rule_id: int, request: Request, db: DbSession) -> None:
|
||||
"""Delete a routing rule."""
|
||||
user_id = _get_user_id(request)
|
||||
admin = _is_admin(request)
|
||||
|
||||
rule = db.query(PipelineRoutingRule).filter(PipelineRoutingRule.id == rule_id).first()
|
||||
if not rule or not _can_access_rule(rule, user_id, admin):
|
||||
raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="Routing rule not found")
|
||||
|
||||
if not _can_write_rule(rule, user_id, admin):
|
||||
raise HTTPException(status_code=status.HTTP_403_FORBIDDEN, detail="Cannot modify this rule")
|
||||
|
||||
try:
|
||||
db.delete(rule)
|
||||
db.commit()
|
||||
except Exception:
|
||||
db.rollback()
|
||||
logger.exception("Failed to delete routing rule id=%s", rule_id)
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
|
||||
detail="Failed to delete routing rule",
|
||||
)
|
||||
|
||||
logger.info("Routing rule deleted: id=%s, user=%s", rule_id, user_id)
|
||||
@@ -7,6 +7,7 @@ from app.database import Base
|
||||
# Foreign key constants
|
||||
_FILES_ID_FK = "files.id"
|
||||
_PIPELINES_ID_FK = "pipelines.id"
|
||||
_ROUTING_RULES_TABLE = "pipeline_routing_rules"
|
||||
|
||||
|
||||
class DocumentMetadata(Base):
|
||||
@@ -970,3 +971,53 @@ class ComplianceTemplate(Base):
|
||||
applied_by = Column(String(255), nullable=True)
|
||||
created_at = Column(DateTime(timezone=True), server_default=func.now())
|
||||
updated_at = Column(DateTime(timezone=True), server_default=func.now(), onupdate=func.now())
|
||||
|
||||
|
||||
class PipelineRoutingRule(Base):
|
||||
"""Conditional routing rule that assigns documents to pipelines.
|
||||
|
||||
Rules are evaluated in ascending ``position`` order for a given owner.
|
||||
The first rule whose condition matches the document properties wins and
|
||||
the document is routed to ``target_pipeline_id``. If no rule matches,
|
||||
the caller falls back to the owner's (or system) default pipeline.
|
||||
|
||||
Supported fields:
|
||||
file_type, document_type, category, filename, size, and any key
|
||||
inside the AI-extracted metadata JSON (prefixed ``metadata.``).
|
||||
|
||||
Supported operators:
|
||||
equals, not_equals, contains, not_contains, regex, gt, lt, gte, lte.
|
||||
"""
|
||||
|
||||
__tablename__ = _ROUTING_RULES_TABLE
|
||||
|
||||
id = Column(Integer, primary_key=True, index=True)
|
||||
|
||||
# Owner of this rule. NULL = system-wide rule (admin only).
|
||||
owner_id = Column(String, nullable=True, index=True)
|
||||
|
||||
# Human-readable label for the rule.
|
||||
name = Column(String(255), nullable=False)
|
||||
|
||||
# Evaluation order (lower = earlier). First matching rule wins.
|
||||
position = Column(Integer, nullable=False, default=0)
|
||||
|
||||
# The document property to evaluate.
|
||||
# Built-in: file_type, document_type, category, filename, size.
|
||||
# For AI metadata fields, use the "metadata.<key>" prefix.
|
||||
field = Column(String(255), nullable=False)
|
||||
|
||||
# Comparison operator.
|
||||
operator = Column(String(50), nullable=False)
|
||||
|
||||
# Value to compare against (always stored as text; cast as needed).
|
||||
value = Column(String(1024), nullable=False)
|
||||
|
||||
# Target pipeline when the condition matches.
|
||||
target_pipeline_id = Column(Integer, ForeignKey(_PIPELINES_ID_FK), nullable=False, index=True)
|
||||
|
||||
# Soft-disable without deleting.
|
||||
is_active = Column(Boolean, nullable=False, default=True)
|
||||
|
||||
created_at = Column(DateTime(timezone=True), server_default=func.now())
|
||||
updated_at = Column(DateTime(timezone=True), server_default=func.now(), onupdate=func.now())
|
||||
|
||||
@@ -0,0 +1,223 @@
|
||||
"""Routing engine for conditional document-to-pipeline assignment.
|
||||
|
||||
Evaluates a set of :class:`PipelineRoutingRule` rows against document
|
||||
properties and returns the first matching target pipeline (if any).
|
||||
|
||||
Supported document fields
|
||||
-------------------------
|
||||
* ``file_type`` – MIME type of the file (e.g. ``application/pdf``)
|
||||
* ``filename`` – original filename
|
||||
* ``size`` – file size in bytes (numeric comparison)
|
||||
* ``document_type`` – AI-classified document type (e.g. ``Invoice``)
|
||||
* ``category`` – alias for ``document_type``
|
||||
* ``metadata.<key>`` – arbitrary key inside the AI-extracted JSON metadata
|
||||
|
||||
Supported comparison operators
|
||||
------------------------------
|
||||
* ``equals`` / ``not_equals``
|
||||
* ``contains`` / ``not_contains`` (substring match, case-insensitive)
|
||||
* ``regex`` (Python ``re`` full-match, case-insensitive)
|
||||
* ``gt`` / ``lt`` / ``gte`` / ``lte`` (numeric comparison)
|
||||
"""
|
||||
|
||||
import json
|
||||
import logging
|
||||
import re
|
||||
from typing import Any
|
||||
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from app.models import Pipeline, PipelineRoutingRule
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
# Operators recognised by the engine.
|
||||
VALID_OPERATORS: frozenset[str] = frozenset(
|
||||
{
|
||||
"equals",
|
||||
"not_equals",
|
||||
"contains",
|
||||
"not_contains",
|
||||
"regex",
|
||||
"gt",
|
||||
"lt",
|
||||
"gte",
|
||||
"lte",
|
||||
}
|
||||
)
|
||||
|
||||
# Fields that are resolved directly from the FileRecord.
|
||||
BUILTIN_FIELDS: frozenset[str] = frozenset(
|
||||
{
|
||||
"file_type",
|
||||
"filename",
|
||||
"size",
|
||||
"document_type",
|
||||
"category",
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
def _resolve_field(field: str, doc_props: dict[str, Any]) -> Any:
|
||||
"""Resolve a *field* name to its actual value from *doc_props*.
|
||||
|
||||
``doc_props`` is expected to contain top-level keys that mirror the
|
||||
built-in field names **plus** a ``metadata`` dict with the parsed
|
||||
AI metadata JSON.
|
||||
"""
|
||||
if field == "category":
|
||||
# ``category`` is an alias for ``document_type``.
|
||||
field = "document_type"
|
||||
|
||||
if field.startswith("metadata."):
|
||||
meta_key = field[len("metadata.") :]
|
||||
metadata = doc_props.get("metadata") or {}
|
||||
return metadata.get(meta_key)
|
||||
|
||||
return doc_props.get(field)
|
||||
|
||||
|
||||
def _to_float(value: Any) -> float | None:
|
||||
"""Try to convert *value* to a float for numeric comparison."""
|
||||
if value is None:
|
||||
return None
|
||||
try:
|
||||
return float(value)
|
||||
except (TypeError, ValueError):
|
||||
return None
|
||||
|
||||
|
||||
def _evaluate_condition(actual: Any, operator: str, expected: str) -> bool:
|
||||
"""Return ``True`` when *actual* satisfies *operator* against *expected*.
|
||||
|
||||
All string comparisons are case-insensitive. Numeric operators (``gt``,
|
||||
``lt``, ``gte``, ``lte``) attempt to cast both sides to ``float``.
|
||||
"""
|
||||
if actual is None:
|
||||
# If the document property is missing, the rule cannot match
|
||||
# (except for ``not_equals`` / ``not_contains`` which should match).
|
||||
if operator == "not_equals":
|
||||
return True
|
||||
if operator == "not_contains":
|
||||
return True
|
||||
return False
|
||||
|
||||
actual_str = str(actual).lower()
|
||||
expected_lower = expected.lower()
|
||||
|
||||
if operator == "equals":
|
||||
return actual_str == expected_lower
|
||||
if operator == "not_equals":
|
||||
return actual_str != expected_lower
|
||||
if operator == "contains":
|
||||
return expected_lower in actual_str
|
||||
if operator == "not_contains":
|
||||
return expected_lower not in actual_str
|
||||
if operator == "regex":
|
||||
try:
|
||||
return bool(re.fullmatch(expected, str(actual), flags=re.IGNORECASE))
|
||||
except re.error:
|
||||
logger.warning("Invalid regex in routing rule: %s", expected)
|
||||
return False
|
||||
|
||||
# Numeric operators
|
||||
actual_num = _to_float(actual)
|
||||
expected_num = _to_float(expected)
|
||||
if actual_num is None or expected_num is None:
|
||||
return False
|
||||
|
||||
if operator == "gt":
|
||||
return actual_num > expected_num
|
||||
if operator == "lt":
|
||||
return actual_num < expected_num
|
||||
if operator == "gte":
|
||||
return actual_num >= expected_num
|
||||
if operator == "lte":
|
||||
return actual_num <= expected_num
|
||||
|
||||
return False
|
||||
|
||||
|
||||
def build_document_properties(file_record: Any) -> dict[str, Any]:
|
||||
"""Build the property dict that the engine evaluates against.
|
||||
|
||||
Args:
|
||||
file_record: A :class:`FileRecord` instance (or any object with the
|
||||
same attributes).
|
||||
|
||||
Returns:
|
||||
A dict with ``file_type``, ``filename``, ``size``, ``document_type``,
|
||||
and ``metadata`` keys.
|
||||
"""
|
||||
metadata: dict[str, Any] = {}
|
||||
raw_meta = getattr(file_record, "ai_metadata", None)
|
||||
if raw_meta:
|
||||
try:
|
||||
metadata = json.loads(raw_meta) if isinstance(raw_meta, str) else raw_meta
|
||||
except (json.JSONDecodeError, TypeError):
|
||||
metadata = {}
|
||||
|
||||
return {
|
||||
"file_type": getattr(file_record, "mime_type", None),
|
||||
"filename": getattr(file_record, "original_filename", None),
|
||||
"size": getattr(file_record, "file_size", None),
|
||||
"document_type": metadata.get("document_type"),
|
||||
"metadata": metadata,
|
||||
}
|
||||
|
||||
|
||||
def evaluate_routing_rules(
|
||||
db: Session,
|
||||
owner_id: str | None,
|
||||
doc_props: dict[str, Any],
|
||||
) -> Pipeline | None:
|
||||
"""Evaluate routing rules and return the first matching pipeline.
|
||||
|
||||
Rules are fetched for the given *owner_id* **plus** any system-wide rules
|
||||
(``owner_id IS NULL``). Owner rules are evaluated first (by position),
|
||||
then system rules.
|
||||
|
||||
Args:
|
||||
db: Active database session.
|
||||
owner_id: The document owner's identifier (may be ``None``).
|
||||
doc_props: Document property dict as produced by
|
||||
:func:`build_document_properties`.
|
||||
|
||||
Returns:
|
||||
The first matching :class:`Pipeline`, or ``None`` when no rule
|
||||
matches (caller should fall back to the default pipeline).
|
||||
"""
|
||||
# Fetch active rules for the owner + system rules, ordered by position.
|
||||
rules = (
|
||||
db.query(PipelineRoutingRule)
|
||||
.filter(
|
||||
PipelineRoutingRule.is_active.is_(True),
|
||||
(PipelineRoutingRule.owner_id == owner_id) | (PipelineRoutingRule.owner_id.is_(None)),
|
||||
)
|
||||
.order_by(
|
||||
# Owner-specific rules take priority over system rules.
|
||||
PipelineRoutingRule.owner_id.is_(None).asc(),
|
||||
PipelineRoutingRule.position.asc(),
|
||||
)
|
||||
.all()
|
||||
)
|
||||
|
||||
for rule in rules:
|
||||
actual = _resolve_field(rule.field, doc_props)
|
||||
if _evaluate_condition(actual, rule.operator, rule.value):
|
||||
pipeline = db.query(Pipeline).filter(Pipeline.id == rule.target_pipeline_id).first()
|
||||
if pipeline and pipeline.is_active:
|
||||
logger.info(
|
||||
"Routing rule matched: rule_id=%s, name=%s, target_pipeline=%s",
|
||||
rule.id,
|
||||
rule.name,
|
||||
rule.target_pipeline_id,
|
||||
)
|
||||
return pipeline
|
||||
logger.warning(
|
||||
"Routing rule %s matched but target pipeline %s is inactive or missing",
|
||||
rule.id,
|
||||
rule.target_pipeline_id,
|
||||
)
|
||||
|
||||
return None
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
"project_id_env": "CROWDIN_PROJECT_ID"
|
||||
"api_token_env": "CROWDIN_PERSONAL_TOKEN"
|
||||
"base_path": "."
|
||||
"base_url": "https://api.crowdin.com"
|
||||
|
||||
"preserve_hierarchy": true
|
||||
|
||||
files:
|
||||
- source: /frontend/translations/en.json
|
||||
translation: /frontend/translations/%two_letters_code%.json
|
||||
type: json
|
||||
+154
@@ -1960,6 +1960,160 @@ Pass no `pipeline_id` query parameter (or omit it) to clear the assignment.
|
||||
```
|
||||
|
||||
|
||||
## Routing Rules
|
||||
|
||||
Routing rules let you conditionally assign documents to different pipelines
|
||||
based on file properties such as type, size, filename, or AI-extracted
|
||||
metadata. Rules are evaluated in **position order** (lowest first); the first
|
||||
rule that matches wins. If no rule matches, the system falls back to the
|
||||
owner's (or global) default pipeline.
|
||||
|
||||
### Supported operators and fields
|
||||
|
||||
```bash
|
||||
GET /api/routing-rules/operators
|
||||
```
|
||||
|
||||
Returns the catalogue of valid operators and built-in fields so UIs can
|
||||
populate dropdowns without hard-coding values.
|
||||
|
||||
**Response (200):**
|
||||
```json
|
||||
{
|
||||
"operators": ["contains", "equals", "gt", "gte", "lt", "lte", "not_contains", "not_equals", "regex"],
|
||||
"builtin_fields": ["category", "document_type", "file_type", "filename", "size"],
|
||||
"metadata_prefix": "metadata."
|
||||
}
|
||||
```
|
||||
|
||||
> **Tip:** For AI metadata fields use the `metadata.` prefix, e.g.
|
||||
> `metadata.sender`, `metadata.amount`.
|
||||
|
||||
### List routing rules
|
||||
|
||||
```bash
|
||||
GET /api/routing-rules
|
||||
```
|
||||
|
||||
Returns the current user's rules **plus** any system-wide rules
|
||||
(`owner_id = null`), ordered by position.
|
||||
|
||||
**Response (200):**
|
||||
```json
|
||||
[
|
||||
{
|
||||
"id": 1,
|
||||
"owner_id": "alice",
|
||||
"name": "Route invoices",
|
||||
"position": 0,
|
||||
"field": "document_type",
|
||||
"operator": "equals",
|
||||
"value": "Invoice",
|
||||
"target_pipeline_id": 3,
|
||||
"is_active": true,
|
||||
"created_at": "2026-03-09T12:00:00+00:00",
|
||||
"updated_at": "2026-03-09T12:00:00+00:00"
|
||||
}
|
||||
]
|
||||
```
|
||||
|
||||
### Create routing rule
|
||||
|
||||
```bash
|
||||
POST /api/routing-rules
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"name": "Route invoices",
|
||||
"field": "document_type",
|
||||
"operator": "equals",
|
||||
"value": "Invoice",
|
||||
"target_pipeline_id": 3
|
||||
}
|
||||
```
|
||||
|
||||
Optional fields: `position` (auto-assigned if omitted), `is_active` (default `true`).
|
||||
|
||||
**Response (201 Created):** The created rule object.
|
||||
|
||||
### Get routing rule
|
||||
|
||||
```bash
|
||||
GET /api/routing-rules/{rule_id}
|
||||
```
|
||||
|
||||
**Response (200):** A single rule object.
|
||||
|
||||
### Update routing rule
|
||||
|
||||
```bash
|
||||
PUT /api/routing-rules/{rule_id}
|
||||
Content-Type: application/json
|
||||
|
||||
{ "name": "Renamed rule", "operator": "contains", "is_active": false }
|
||||
```
|
||||
|
||||
Only the supplied fields are updated.
|
||||
|
||||
**Response (200):** The updated rule object.
|
||||
|
||||
### Delete routing rule
|
||||
|
||||
```bash
|
||||
DELETE /api/routing-rules/{rule_id}
|
||||
```
|
||||
|
||||
Returns **204 No Content**.
|
||||
|
||||
### Reorder routing rules
|
||||
|
||||
```bash
|
||||
PUT /api/routing-rules/reorder
|
||||
Content-Type: application/json
|
||||
|
||||
{ "rule_ids": [3, 1, 2] }
|
||||
```
|
||||
|
||||
Provide the complete ordered list of your rule IDs. Positions are reassigned
|
||||
0, 1, 2, … in the given order.
|
||||
|
||||
### Evaluate rules (dry run)
|
||||
|
||||
```bash
|
||||
POST /api/routing-rules/evaluate
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"file_type": "application/pdf",
|
||||
"filename": "invoice_2024.pdf",
|
||||
"size": 204800,
|
||||
"document_type": "Invoice",
|
||||
"metadata": { "sender": "Acme Corp" }
|
||||
}
|
||||
```
|
||||
|
||||
Tests which rule (if any) would match the given properties **without**
|
||||
actually routing a document.
|
||||
|
||||
**Response (200) – match found:**
|
||||
```json
|
||||
{
|
||||
"matched": true,
|
||||
"rule": { "id": 1, "name": "Route invoices", "..." : "..." },
|
||||
"target_pipeline": { "id": 3, "name": "Invoice Pipeline", "is_active": true }
|
||||
}
|
||||
```
|
||||
|
||||
**Response (200) – no match:**
|
||||
```json
|
||||
{
|
||||
"matched": false,
|
||||
"rule": null,
|
||||
"target_pipeline": null
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
## API Tokens
|
||||
|
||||
Personal API tokens allow programmatic access to the DocuElevate API without
|
||||
|
||||
@@ -626,6 +626,58 @@ Pass no `pipeline_id` to clear the assignment and fall back to the system defaul
|
||||
|
||||
Admins can create **system pipelines** that appear in every user's pipeline list. These can be set as the global default so all users benefit from a consistent processing baseline. Navigate to **Pipelines** and check the **System pipeline** box when creating a new one (admin only).
|
||||
|
||||
### Conditional routing rules
|
||||
|
||||
Routing rules automatically assign incoming documents to the right pipeline
|
||||
based on their properties — no manual pipeline selection required.
|
||||
|
||||
**How it works:**
|
||||
|
||||
1. Define one or more routing rules via the API
|
||||
(`POST /api/routing-rules`).
|
||||
2. Each rule specifies a **field** to inspect, an **operator** (condition),
|
||||
a **value** to compare against, and a **target pipeline**.
|
||||
3. When a document is processed, rules are evaluated **in position order**
|
||||
(lowest first). The first matching rule wins and the document is routed
|
||||
to that pipeline.
|
||||
4. If no rule matches, the document is processed by the default pipeline.
|
||||
|
||||
**Available fields:**
|
||||
|
||||
| Field | Description |
|
||||
|-------|-------------|
|
||||
| `file_type` | MIME type, e.g. `application/pdf` |
|
||||
| `filename` | Original filename |
|
||||
| `size` | File size in bytes |
|
||||
| `document_type` | AI-classified type (Invoice, Contract, …) |
|
||||
| `category` | Alias for `document_type` |
|
||||
| `metadata.<key>` | Any key from the AI-extracted metadata JSON |
|
||||
|
||||
**Available operators:**
|
||||
|
||||
| Operator | Description |
|
||||
|----------|-------------|
|
||||
| `equals` / `not_equals` | Exact match (case-insensitive) |
|
||||
| `contains` / `not_contains` | Substring match (case-insensitive) |
|
||||
| `regex` | Full Python regex match (case-insensitive) |
|
||||
| `gt` / `lt` / `gte` / `lte` | Numeric comparison (greater/less than) |
|
||||
|
||||
**Example:** Route invoices to one pipeline and large files to another:
|
||||
|
||||
```
|
||||
Rule 1: field=document_type, operator=equals, value=Invoice, target_pipeline=3
|
||||
Rule 2: field=size, operator=gt, value=1048576, target_pipeline=5
|
||||
```
|
||||
|
||||
With first-match-wins logic, an invoice of any size matches Rule 1 and is
|
||||
routed to pipeline 3. A non-invoice file larger than 1 MB matches Rule 2
|
||||
and is routed to pipeline 5. Everything else falls back to the default
|
||||
pipeline.
|
||||
|
||||
You can test your rules without actually routing a document using the
|
||||
**evaluate** endpoint (`POST /api/routing-rules/evaluate`). For the full
|
||||
API reference, see [API Documentation](API.md#routing-rules).
|
||||
|
||||
## API Access
|
||||
|
||||
For programmatic access, DocuElevate provides a comprehensive REST API:
|
||||
|
||||
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,6 +586,7 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Езикът беше променен на {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
@@ -602,6 +612,7 @@
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Български",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -331,7 +338,7 @@
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
@@ -359,7 +366,7 @@
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,7 +586,8 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.changed": "L'idioma s'ha canviat a {language}",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
@@ -601,7 +611,8 @@
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Català",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,6 +586,7 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Jazyk byl změněn na {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
@@ -602,6 +612,7 @@
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Čeština",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,6 +586,7 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Sproget blev ændret til {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
@@ -602,6 +612,7 @@
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Dansk",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -331,7 +338,7 @@
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
@@ -359,7 +366,7 @@
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,7 +586,8 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.changed": "Η γλώσσα άλλαξε σε {language}",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
@@ -601,7 +611,8 @@
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Ελληνικά",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
+861
-835
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirmar",
|
||||
"common.copied": "¡Copiado!",
|
||||
"common.copy": "Copiar",
|
||||
"common.create": "Create",
|
||||
"common.created": "Creado",
|
||||
"common.date": "Fecha",
|
||||
"common.delete": "Eliminar",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Detalles",
|
||||
"common.disabled": "Deshabilitado",
|
||||
"common.download": "Descargar",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Editar",
|
||||
"common.enabled": "Habilitado",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Página",
|
||||
"common.pending": "Pendiente",
|
||||
"common.prev_page": "Página anterior",
|
||||
"common.previous": "Anterior",
|
||||
"common.processing": "Procesando",
|
||||
"common.refresh": "Actualizar",
|
||||
"common.reset": "Restablecer",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— seleccionar —",
|
||||
"common.size": "Tamaño",
|
||||
"common.status": "Estado",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Éxito",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Tipo",
|
||||
"common.updated": "Actualizado",
|
||||
"common.upload": "Cargar",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Advertencia",
|
||||
"common.yes": "Sí",
|
||||
"cookie.accept": "Entendido",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate utiliza solo cookies de sesión esenciales necesarias para la autenticación y el funcionamiento del servicio. No se utilizan cookies de seguimiento ni analíticas.",
|
||||
"cookie.notice_label": "Aviso de cookies",
|
||||
"cookie.policy_link": "Política de cookies",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Cerrar progreso de carga",
|
||||
"files.upload_modal_header": "Cargando Archivos",
|
||||
"files.uploaded": "Subido",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Atribuciones",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,6 +586,7 @@
|
||||
"integrations.username_label": "Usuario",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Idioma cambiado a {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
@@ -602,6 +612,7 @@
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Idioma",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "Acerca de",
|
||||
"nav.admin": "Administración",
|
||||
"nav.admin.audit_logs": "Registros de auditoría",
|
||||
"nav.admin.backups": "Copias de seguridad",
|
||||
"nav.admin.plans": "Planes",
|
||||
"nav.admin.scheduled_jobs": "Tareas programadas",
|
||||
"nav.admin.users": "Usuarios",
|
||||
"nav.admin_actions": "Acciones de administración",
|
||||
"nav.admin_menu": "Menú de administración",
|
||||
"nav.api_docs": "Documentación API",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Copia de seguridad y restauración",
|
||||
"nav.credentials": "Credenciales",
|
||||
"nav.dark_mode": "Modo oscuro",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Archivos",
|
||||
"nav.help": "Ayuda",
|
||||
"nav.help_center": "Centro de ayuda",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integraciones",
|
||||
"nav.light_mode": "Modo claro",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Navegación principal",
|
||||
"nav.notifications": "Notificaciones",
|
||||
"nav.open_main_menu": "Abrir menú principal",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Diseñador de planes",
|
||||
"nav.pricing": "Precios",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Monitor de cola",
|
||||
"nav.scheduled_jobs": "Tareas programadas",
|
||||
"nav.search": "Buscar",
|
||||
"nav.settings": "Configuración",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similitud",
|
||||
"nav.skip_to_content": "Ir al contenido principal",
|
||||
"nav.status": "Estado",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Alternar modo oscuro",
|
||||
"nav.toggle_nav": "Alternar menú de navegación",
|
||||
"nav.upload": "Cargar",
|
||||
"nav.users": "Usuarios",
|
||||
"nav.version": "Información de versión",
|
||||
"notifications.filter_all": "Todas",
|
||||
"notifications.filter_read": "Solo leídas",
|
||||
"notifications.filter_unread": "Solo no leídas",
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -331,7 +338,7 @@
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
@@ -359,7 +366,7 @@
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,7 +586,8 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.changed": "Keel muudeti keelele {language}",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
@@ -601,7 +611,8 @@
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Eesti",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,6 +586,7 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Kieli vaihdettiin kieleen {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
@@ -602,6 +612,7 @@
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Suomi",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirmer",
|
||||
"common.copied": "Copié !",
|
||||
"common.copy": "Copier",
|
||||
"common.create": "Create",
|
||||
"common.created": "Créé",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Supprimer",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Détails",
|
||||
"common.disabled": "Désactivé",
|
||||
"common.download": "Télécharger",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Modifier",
|
||||
"common.enabled": "Activé",
|
||||
"common.error": "Erreur",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "En attente",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "En cours de traitement",
|
||||
"common.refresh": "Actualiser",
|
||||
"common.reset": "Réinitialiser",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Taille",
|
||||
"common.status": "Statut",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Succès",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Mis à jour",
|
||||
"common.upload": "Téléverser",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Avertissement",
|
||||
"common.yes": "Oui",
|
||||
"cookie.accept": "Compris",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate utilise uniquement des cookies de session essentiels nécessaires à l'authentification et au fonctionnement du service. Aucun cookie de suivi ou d'analyse n'est utilisé.",
|
||||
"cookie.notice_label": "Avis relatif aux cookies",
|
||||
"cookie.policy_link": "Politique de cookies",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Téléversé",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,6 +586,7 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Langue changée en {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
@@ -602,6 +612,7 @@
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Langue",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "À propos",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Actions admin",
|
||||
"nav.admin_menu": "Menu admin",
|
||||
"nav.api_docs": "Documentation API",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Sauvegarde et restauration",
|
||||
"nav.credentials": "Identifiants",
|
||||
"nav.dark_mode": "Mode sombre",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Fichiers",
|
||||
"nav.help": "Aide",
|
||||
"nav.help_center": "Centre d'aide",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Intégrations",
|
||||
"nav.light_mode": "Mode clair",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Navigation principale",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Ouvrir le menu principal",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Concepteur de plans",
|
||||
"nav.pricing": "Tarifs",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "File d'attente",
|
||||
"nav.scheduled_jobs": "Tâches planifiées",
|
||||
"nav.search": "Recherche",
|
||||
"nav.settings": "Paramètres",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarité",
|
||||
"nav.skip_to_content": "Aller au contenu principal",
|
||||
"nav.status": "Statut",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Basculer le mode sombre",
|
||||
"nav.toggle_nav": "Basculer le menu de navigation",
|
||||
"nav.upload": "Téléverser",
|
||||
"nav.users": "Utilisateurs",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -331,7 +338,7 @@
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
@@ -359,7 +366,7 @@
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,7 +586,8 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.changed": "Athraíodh an teanga go {language}",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
@@ -601,7 +611,8 @@
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Gaeilge",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,6 +586,7 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Jezik je promijenjen na {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
@@ -602,6 +612,7 @@
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Hrvatski",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -331,7 +338,7 @@
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
@@ -359,7 +366,7 @@
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,7 +586,8 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.changed": "A nyelv megváltozott erre: {language}",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
@@ -601,7 +611,8 @@
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Magyar",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,6 +586,7 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Tungumálið var breytt í {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
@@ -602,6 +612,7 @@
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Íslenska",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Conferma",
|
||||
"common.copied": "Copiato!",
|
||||
"common.copy": "Copia",
|
||||
"common.create": "Create",
|
||||
"common.created": "Creato",
|
||||
"common.date": "Data",
|
||||
"common.delete": "Elimina",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Dettagli",
|
||||
"common.disabled": "Disabilitato",
|
||||
"common.download": "Scarica",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Modifica",
|
||||
"common.enabled": "Abilitato",
|
||||
"common.error": "Errore",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "In attesa",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "In elaborazione",
|
||||
"common.refresh": "Aggiorna",
|
||||
"common.reset": "Reimposta",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Dimensione",
|
||||
"common.status": "Stato",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Successo",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Tipo",
|
||||
"common.updated": "Aggiornato",
|
||||
"common.upload": "Carica",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Avviso",
|
||||
"common.yes": "Sì",
|
||||
"cookie.accept": "Ho capito",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate utilizza solo cookie di sessione essenziali necessari per l'autenticazione e il funzionamento del servizio. Non vengono utilizzati cookie di tracciamento o analisi.",
|
||||
"cookie.notice_label": "Avviso sui cookie",
|
||||
"cookie.policy_link": "Politica sui cookie",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Caricato",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attribuzioni",
|
||||
"footer.cookies": "Cookie",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,6 +586,7 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Lingua cambiata in {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
@@ -602,6 +612,7 @@
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Lingua",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "Informazioni",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Azioni admin",
|
||||
"nav.admin_menu": "Menu admin",
|
||||
"nav.api_docs": "Documentazione API",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup e ripristino",
|
||||
"nav.credentials": "Credenziali",
|
||||
"nav.dark_mode": "Modalità scura",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "File",
|
||||
"nav.help": "Aiuto",
|
||||
"nav.help_center": "Centro assistenza",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrazioni",
|
||||
"nav.light_mode": "Modalità chiara",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Navigazione principale",
|
||||
"nav.notifications": "Notifiche",
|
||||
"nav.open_main_menu": "Apri menu principale",
|
||||
"nav.pipelines": "Pipeline",
|
||||
"nav.plan_designer": "Designer dei piani",
|
||||
"nav.pricing": "Prezzi",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Monitor coda",
|
||||
"nav.scheduled_jobs": "Attività pianificate",
|
||||
"nav.search": "Cerca",
|
||||
"nav.settings": "Impostazioni",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarità",
|
||||
"nav.skip_to_content": "Vai al contenuto principale",
|
||||
"nav.status": "Stato",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Attiva/disattiva modalità scura",
|
||||
"nav.toggle_nav": "Attiva/disattiva menu di navigazione",
|
||||
"nav.upload": "Carica",
|
||||
"nav.users": "Utenti",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -331,7 +338,7 @@
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
@@ -359,7 +366,7 @@
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,7 +586,8 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.changed": "D'Sprooch gouf op {language} geännert",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
@@ -601,7 +611,8 @@
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Lëtzebuergesch",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -331,7 +338,7 @@
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
@@ -359,7 +366,7 @@
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,7 +586,8 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.changed": "Kalba pakeista į {language}",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
@@ -601,7 +611,8 @@
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Lietuvių",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -331,7 +338,7 @@
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
@@ -359,7 +366,7 @@
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,7 +586,8 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.changed": "Valoda tika nomainīta uz {language}",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
@@ -601,7 +611,8 @@
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Latviešu",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,6 +586,7 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Språket ble endret til {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
@@ -602,6 +612,7 @@
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Norsk",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Bevestigen",
|
||||
"common.copied": "Gekopieerd!",
|
||||
"common.copy": "Kopiëren",
|
||||
"common.create": "Create",
|
||||
"common.created": "Aangemaakt",
|
||||
"common.date": "Datum",
|
||||
"common.delete": "Verwijderen",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Uitgeschakeld",
|
||||
"common.download": "Downloaden",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Bewerken",
|
||||
"common.enabled": "Ingeschakeld",
|
||||
"common.error": "Fout",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "In afwachting",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Verwerken",
|
||||
"common.refresh": "Vernieuwen",
|
||||
"common.reset": "Herstellen",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Grootte",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Succes",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Bijgewerkt",
|
||||
"common.upload": "Uploaden",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Waarschuwing",
|
||||
"common.yes": "Ja",
|
||||
"cookie.accept": "Begrepen",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate gebruikt alleen essentiële sessiecookies die nodig zijn voor authenticatie en werking van de service. Er worden geen tracking- of analysecookies gebruikt.",
|
||||
"cookie.notice_label": "Cookiemelding",
|
||||
"cookie.policy_link": "Cookiebeleid",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Geüpload",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributies",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,6 +586,7 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Taal gewijzigd naar {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
@@ -602,6 +612,7 @@
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Taal",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "Over ons",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin-acties",
|
||||
"nav.admin_menu": "Admin-menu",
|
||||
"nav.api_docs": "API-documentatie",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Back-up en herstel",
|
||||
"nav.credentials": "Referenties",
|
||||
"nav.dark_mode": "Donkere modus",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Bestanden",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Helpcentrum",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integraties",
|
||||
"nav.light_mode": "Lichte modus",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Hoofdnavigatie",
|
||||
"nav.notifications": "Meldingen",
|
||||
"nav.open_main_menu": "Hoofdmenu openen",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Planontwerper",
|
||||
"nav.pricing": "Prijzen",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Wachtrijmonitor",
|
||||
"nav.scheduled_jobs": "Geplande taken",
|
||||
"nav.search": "Zoeken",
|
||||
"nav.settings": "Instellingen",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Gelijkenis",
|
||||
"nav.skip_to_content": "Ga naar hoofdinhoud",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Donkere modus schakelen",
|
||||
"nav.toggle_nav": "Navigatiemenu schakelen",
|
||||
"nav.upload": "Uploaden",
|
||||
"nav.users": "Gebruikers",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Potwierdź",
|
||||
"common.copied": "Skopiowano!",
|
||||
"common.copy": "Kopiuj",
|
||||
"common.create": "Create",
|
||||
"common.created": "Utworzono",
|
||||
"common.date": "Data",
|
||||
"common.delete": "Usuń",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Szczegóły",
|
||||
"common.disabled": "Wyłączony",
|
||||
"common.download": "Pobierz",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edytuj",
|
||||
"common.enabled": "Włączony",
|
||||
"common.error": "Błąd",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Oczekujące",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Przetwarzanie",
|
||||
"common.refresh": "Odśwież",
|
||||
"common.reset": "Resetuj",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Rozmiar",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Sukces",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Typ",
|
||||
"common.updated": "Zaktualizowano",
|
||||
"common.upload": "Prześlij",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Ostrzeżenie",
|
||||
"common.yes": "Tak",
|
||||
"cookie.accept": "Rozumiem",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate używa wyłącznie niezbędnych plików cookie sesji wymaganych do uwierzytelniania i działania usługi. Nie są używane pliki cookie śledzące ani analityczne.",
|
||||
"cookie.notice_label": "Informacja o plikach cookie",
|
||||
"cookie.policy_link": "Polityka plików cookie",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Przesłano",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Atrybuty",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,6 +586,7 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Język zmieniony na {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
@@ -602,6 +612,7 @@
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Język",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "O nas",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Akcje administratora",
|
||||
"nav.admin_menu": "Menu administratora",
|
||||
"nav.api_docs": "Dokumentacja API",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Kopia zapasowa i przywracanie",
|
||||
"nav.credentials": "Poświadczenia",
|
||||
"nav.dark_mode": "Tryb ciemny",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Pliki",
|
||||
"nav.help": "Pomoc",
|
||||
"nav.help_center": "Centrum pomocy",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integracje",
|
||||
"nav.light_mode": "Tryb jasny",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Nawigacja główna",
|
||||
"nav.notifications": "Powiadomienia",
|
||||
"nav.open_main_menu": "Otwórz menu główne",
|
||||
"nav.pipelines": "Potoki",
|
||||
"nav.plan_designer": "Projektant planów",
|
||||
"nav.pricing": "Cennik",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Monitor kolejki",
|
||||
"nav.scheduled_jobs": "Zaplanowane zadania",
|
||||
"nav.search": "Szukaj",
|
||||
"nav.settings": "Ustawienia",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Podobieństwo",
|
||||
"nav.skip_to_content": "Przejdź do treści głównej",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Przełącz tryb ciemny",
|
||||
"nav.toggle_nav": "Przełącz menu nawigacji",
|
||||
"nav.upload": "Prześlij",
|
||||
"nav.users": "Użytkownicy",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirmar",
|
||||
"common.copied": "Copiado!",
|
||||
"common.copy": "Copiar",
|
||||
"common.create": "Create",
|
||||
"common.created": "Criado",
|
||||
"common.date": "Data",
|
||||
"common.delete": "Eliminar",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Detalhes",
|
||||
"common.disabled": "Desativado",
|
||||
"common.download": "Descarregar",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Editar",
|
||||
"common.enabled": "Ativado",
|
||||
"common.error": "Erro",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pendente",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "A processar",
|
||||
"common.refresh": "Atualizar",
|
||||
"common.reset": "Repor",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Tamanho",
|
||||
"common.status": "Estado",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Sucesso",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Tipo",
|
||||
"common.updated": "Atualizado",
|
||||
"common.upload": "Carregar",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Aviso",
|
||||
"common.yes": "Sim",
|
||||
"cookie.accept": "Entendido",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "O DocuElevate utiliza apenas cookies de sessão essenciais necessários para a autenticação e o funcionamento do serviço. Não são utilizados cookies de rastreamento ou analíticos.",
|
||||
"cookie.notice_label": "Aviso de cookies",
|
||||
"cookie.policy_link": "Política de cookies",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Carregado",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Atribuições",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,6 +586,7 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Idioma alterado para {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
@@ -602,6 +612,7 @@
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Idioma",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "Sobre",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Ações de administração",
|
||||
"nav.admin_menu": "Menu de administração",
|
||||
"nav.api_docs": "Documentação API",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Cópia de segurança e restauro",
|
||||
"nav.credentials": "Credenciais",
|
||||
"nav.dark_mode": "Modo escuro",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Ficheiros",
|
||||
"nav.help": "Ajuda",
|
||||
"nav.help_center": "Centro de ajuda",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrações",
|
||||
"nav.light_mode": "Modo claro",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Navegação principal",
|
||||
"nav.notifications": "Notificações",
|
||||
"nav.open_main_menu": "Abrir menu principal",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Designer de planos",
|
||||
"nav.pricing": "Preços",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Monitor de fila",
|
||||
"nav.scheduled_jobs": "Tarefas agendadas",
|
||||
"nav.search": "Pesquisar",
|
||||
"nav.settings": "Definições",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similaridade",
|
||||
"nav.skip_to_content": "Ir para o conteúdo principal",
|
||||
"nav.status": "Estado",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Alternar modo escuro",
|
||||
"nav.toggle_nav": "Alternar menu de navegação",
|
||||
"nav.upload": "Carregar",
|
||||
"nav.users": "Utilizadores",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -331,7 +338,7 @@
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
@@ -359,7 +366,7 @@
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,7 +586,8 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.changed": "Limba a fost schimbată în {language}",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
@@ -601,7 +611,8 @@
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Română",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
+188
-162
@@ -106,22 +106,22 @@
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Войти",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Выйти",
|
||||
"auth.my_account": "Мой аккаунт",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Профиль",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Регистрация",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
@@ -184,62 +184,69 @@
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Действия",
|
||||
"common.active": "Активно",
|
||||
"common.all": "Все",
|
||||
"common.back": "Назад",
|
||||
"common.cancel": "Отмена",
|
||||
"common.close": "Закрыть",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Завершено",
|
||||
"common.confirm": "Подтвердить",
|
||||
"common.copied": "Скопировано!",
|
||||
"common.copy": "Копировать",
|
||||
"common.created": "Создано",
|
||||
"common.date": "Дата",
|
||||
"common.delete": "Удалить",
|
||||
"common.description": "Описание",
|
||||
"common.details": "Подробности",
|
||||
"common.disabled": "Отключено",
|
||||
"common.download": "Скачать",
|
||||
"common.edit": "Редактировать",
|
||||
"common.enabled": "Включено",
|
||||
"common.error": "Ошибка",
|
||||
"common.failed": "Ошибка",
|
||||
"common.filter": "Фильтр",
|
||||
"common.inactive": "Неактивно",
|
||||
"common.info": "Информация",
|
||||
"common.loading": "Загрузка...",
|
||||
"common.name": "Название",
|
||||
"common.next": "Далее",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "Нет",
|
||||
"common.none": "Нет",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "В ожидании",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.processing": "Обработка",
|
||||
"common.refresh": "Обновить",
|
||||
"common.reset": "Сбросить",
|
||||
"common.retry": "Повторить",
|
||||
"common.save": "Сохранить",
|
||||
"common.search": "Поиск",
|
||||
"common.select": "Выбрать",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Размер",
|
||||
"common.status": "Статус",
|
||||
"common.success": "Успешно",
|
||||
"common.type": "Тип",
|
||||
"common.updated": "Обновлено",
|
||||
"common.upload": "Загрузить",
|
||||
"common.view": "Просмотр",
|
||||
"common.warning": "Предупреждение",
|
||||
"common.yes": "Да",
|
||||
"cookie.accept": "Понятно",
|
||||
"cookie.notice": "DocuElevate использует только необходимые сессионные файлы cookie для аутентификации и работы сервиса. Файлы cookie для отслеживания и аналитики не используются.",
|
||||
"cookie.notice_label": "Уведомление о файлах cookie",
|
||||
"cookie.policy_link": "Политика файлов cookie",
|
||||
"cookie.privacy_link": "Уведомление о конфиденциальности",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
@@ -263,16 +270,16 @@
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Активные интеграции",
|
||||
"dashboard.files_this_month": "Файлы за месяц",
|
||||
"dashboard.files_today": "Файлы сегодня",
|
||||
"dashboard.ocr_processed": "OCR обработано",
|
||||
"dashboard.quick_actions": "Быстрые действия",
|
||||
"dashboard.recent_activity": "Последняя активность",
|
||||
"dashboard.storage_targets": "Хранилища",
|
||||
"dashboard.title": "Панель управления",
|
||||
"dashboard.total_files": "Всего файлов",
|
||||
"dashboard.welcome": "Добро пожаловать в DocuElevate",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
@@ -310,14 +317,14 @@
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Доступ запрещён",
|
||||
"error.forbidden_message": "У вас нет прав для доступа к этой странице.",
|
||||
"error.not_found": "Страница не найдена",
|
||||
"error.not_found_message": "Запрашиваемая страница не существует.",
|
||||
"error.server_error": "Внутренняя ошибка сервера",
|
||||
"error.server_error_message": "Что-то пошло не так. Пожалуйста, попробуйте позже.",
|
||||
"error.unauthorized": "Не авторизован",
|
||||
"error.unauthorized_message": "Для доступа к этой странице необходимо войти в систему.",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
@@ -330,12 +337,12 @@
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Название документа",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "Размер файла",
|
||||
"files.filename": "Имя файла",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
@@ -359,10 +366,10 @@
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "Файлы не найдены",
|
||||
"files.ocr_status": "Статус OCR",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
@@ -392,21 +399,23 @@
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Теги",
|
||||
"files.title": "Файлы",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Загружено",
|
||||
"footer.attributions": "Атрибуции",
|
||||
"footer.cookies": "Файлы cookie",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Выходные данные",
|
||||
"footer.license": "Лицензия",
|
||||
"footer.navigation": "Навигация подвала",
|
||||
"footer.privacy": "Конфиденциальность",
|
||||
"footer.terms": "Условия",
|
||||
"footer.version": "Версия {version}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
@@ -426,8 +435,8 @@
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Документация",
|
||||
"help.faq": "Часто задаваемые вопросы",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
@@ -439,7 +448,7 @@
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Начало работы",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
@@ -460,13 +469,13 @@
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Поддержка",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Центр помощи",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
@@ -561,23 +570,24 @@
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Настроить",
|
||||
"integrations.connect": "Подключить",
|
||||
"integrations.connected": "Подключено",
|
||||
"integrations.disconnect": "Отключить",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Не подключено",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Интеграции",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.changed": "Язык изменён на {language}",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
@@ -601,69 +611,85 @@
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Язык",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "О нас",
|
||||
"nav.admin": "Админ",
|
||||
"nav.admin_actions": "Действия администратора",
|
||||
"nav.admin_menu": "Меню администратора",
|
||||
"nav.api_docs": "Документация API",
|
||||
"nav.backup_restore": "Резервное копирование и восстановление",
|
||||
"nav.credentials": "Учётные данные",
|
||||
"nav.dark_mode": "Тёмная тема",
|
||||
"nav.dashboard": "Панель управления",
|
||||
"nav.developer_docs": "Документация для разработчиков",
|
||||
"nav.duplicates": "Дубликаты",
|
||||
"nav.file_manager": "Менеджер файлов",
|
||||
"nav.files": "Файлы",
|
||||
"nav.help": "Помощь",
|
||||
"nav.help_center": "Центр помощи",
|
||||
"nav.integrations": "Интеграции",
|
||||
"nav.light_mode": "Светлая тема",
|
||||
"nav.main_navigation": "Основная навигация",
|
||||
"nav.notifications": "Уведомления",
|
||||
"nav.open_main_menu": "Открыть главное меню",
|
||||
"nav.pipelines": "Конвейеры",
|
||||
"nav.plan_designer": "Конструктор планов",
|
||||
"nav.pricing": "Цены",
|
||||
"nav.queue_monitor": "Монитор очереди",
|
||||
"nav.scheduled_jobs": "Запланированные задачи",
|
||||
"nav.search": "Поиск",
|
||||
"nav.settings": "Настройки",
|
||||
"nav.similarity": "Сходство",
|
||||
"nav.skip_to_content": "Перейти к основному содержанию",
|
||||
"nav.status": "Статус",
|
||||
"nav.toggle_dark_mode": "Переключить тёмную тему",
|
||||
"nav.toggle_nav": "Переключить меню навигации",
|
||||
"nav.upload": "Загрузить",
|
||||
"nav.users": "Пользователи",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Отметить все как прочитанные",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Отметить как прочитанное",
|
||||
"notifications.no_notifications": "Нет уведомлений",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Уведомления",
|
||||
"notifications.unread_count": "{count} непрочитанных уведомлений",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Создать конвейер",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Редактировать конвейер",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
@@ -686,7 +712,7 @@
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Конвейеры обработки",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
@@ -736,18 +762,18 @@
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "Результаты не найдены",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Поиск по имени, содержимому, тегам...",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "Найдено результатов: {count}",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Поиск документов",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
@@ -771,15 +797,15 @@
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Вы уверены, что хотите сбросить эту настройку?",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Не удалось сохранить настройку",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Настройка сохранена",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
@@ -788,7 +814,7 @@
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Настройки",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
@@ -877,11 +903,11 @@
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Перетащите файлы сюда или нажмите для выбора",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Ошибка загрузки",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
@@ -889,14 +915,14 @@
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Максимальный размер файла: {size}",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Выбрать файл",
|
||||
"upload.success": "Файл успешно загружен",
|
||||
"upload.title": "Загрузить документ",
|
||||
"upload.uploading": "Загрузка...",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -331,7 +338,7 @@
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
@@ -359,7 +366,7 @@
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,7 +586,8 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.changed": "Jazyk bol zmenený na {language}",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
@@ -601,7 +611,8 @@
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Slovenčina",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -331,7 +338,7 @@
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
@@ -359,7 +366,7 @@
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,7 +586,8 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.changed": "Jezik je bil spremenjen na {language}",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
@@ -601,7 +611,8 @@
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Slovenščina",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,6 +586,7 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Språket ändrades till {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
@@ -602,6 +612,7 @@
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Svenska",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -331,7 +338,7 @@
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
@@ -359,7 +366,7 @@
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,7 +586,8 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.changed": "Dil {language} olarak değiştirildi",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
@@ -601,7 +611,8 @@
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Türkçe",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,6 +586,7 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Мову змінено на {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
@@ -602,6 +612,7 @@
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Українська",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -0,0 +1,929 @@
|
||||
{
|
||||
"about.creator_heading": "Meet the Creator",
|
||||
"about.creator_name": "Christian Krakau-Louis",
|
||||
"about.creator_pre": "DocuElevate is passionately developed by",
|
||||
"about.features_admin_api": "Powerful REST API for programmatic access",
|
||||
"about.features_admin_config": "Highly configurable via environment variables",
|
||||
"about.features_admin_docker": "Docker-ready for easy deployment and scaling",
|
||||
"about.features_admin_heading": "Administration",
|
||||
"about.features_admin_oauth2": "OAuth2 authentication support with Authentik",
|
||||
"about.features_automation_background": "Background processing with Redis and Celery",
|
||||
"about.features_automation_gmail": "Gmail and generic email account integration",
|
||||
"about.features_automation_heading": "Automation",
|
||||
"about.features_automation_imap": "IMAP inbox polling from multiple sources",
|
||||
"about.features_automation_ingestion": "Automated document ingestion from various inputs",
|
||||
"about.features_heading": "Key Features",
|
||||
"about.features_integration_cloud": "Cloud storage: Dropbox, Google Drive, OneDrive, Amazon S3",
|
||||
"about.features_integration_heading": "Integration & Storage",
|
||||
"about.features_integration_multi_dest": "Multi-destination support (store documents in multiple locations)",
|
||||
"about.features_integration_protocols": "Transfer protocols: FTP, SFTP, Email forwarding",
|
||||
"about.features_integration_selfhosted": "Self-hosted options: Nextcloud, Paperless NGX, WebDAV",
|
||||
"about.features_processing_classification": "Intelligent document classification and date extraction",
|
||||
"about.features_processing_heading": "Document Processing",
|
||||
"about.features_processing_metadata": "Automated metadata extraction using a pluggable AI provider",
|
||||
"about.features_processing_ocr": "OCR powered by Azure Document Intelligence",
|
||||
"about.features_processing_pdf": "PDF conversion for various file formats via Gotenberg",
|
||||
"about.features_processing_upload": "Simple and secure file uploads with drag & drop support",
|
||||
"about.github_logo_alt": "GitHub Logo",
|
||||
"about.heading": "About DocuElevate",
|
||||
"about.intro_post": " – your modern, intelligent solution for document processing! We’ve built DocuElevate to completely transform the way you handle your documents – from upload to extraction, from processing to storage.",
|
||||
"about.intro_pre": "Welcome to ",
|
||||
"about.involved_description": "Want to dive into the code, contribute ideas, or learn more about DocuElevate?",
|
||||
"about.involved_docs": "Read the Documentation",
|
||||
"about.involved_github": "View DocuElevate on GitHub",
|
||||
"about.involved_heading": "Get Involved",
|
||||
"about.involved_website": "Visit DocuElevate Website",
|
||||
"about.legal_description": "We care about your privacy and data security. Please review our:",
|
||||
"about.legal_heading": "Privacy & Legal",
|
||||
"about.legal_license": "License Information",
|
||||
"about.legal_privacy": "Privacy Notice",
|
||||
"about.page_title": "About DocuElevate",
|
||||
"about.story_heading": "Our Story",
|
||||
"about.story_p1": "DocuElevate was created with one goal in mind: to simplify and streamline document management for everyone, whether you’re a small startup or a large enterprise.",
|
||||
"about.story_p2": "We harness the power of pluggable AI providers (OpenAI, Anthropic Claude, Google Gemini, Ollama, OpenRouter, Portkey, and more) for metadata extraction and text refinement, integrate seamlessly with Dropbox, Nextcloud, and Paperless NGX for storage and indexing, leverage Azure Document Intelligence for OCR, and even use Gotenberg for file-to-PDF conversions.",
|
||||
"api_tokens.col_created": "Created",
|
||||
"api_tokens.col_last_ip": "Last IP",
|
||||
"api_tokens.col_last_used": "Last Used",
|
||||
"api_tokens.col_name": "Name",
|
||||
"api_tokens.col_prefix": "Token Prefix",
|
||||
"api_tokens.copy_to_clipboard": "Copy token to clipboard",
|
||||
"api_tokens.copy_upload_example": "Copy upload example to clipboard",
|
||||
"api_tokens.copy_warning_1": "Copy this token now — it will",
|
||||
"api_tokens.copy_warning_2": "not be shown again",
|
||||
"api_tokens.create_heading": "Create New Token",
|
||||
"api_tokens.create_token": "Create Token",
|
||||
"api_tokens.creating": "Creating…",
|
||||
"api_tokens.heading": "API Tokens",
|
||||
"api_tokens.intro": "Create personal API tokens to interact with the DocuElevate API programmatically. Use tokens for webhook uploads, CI/CD pipelines, or any script that needs to upload or retrieve documents.",
|
||||
"api_tokens.loading_tokens": "Loading tokens…",
|
||||
"api_tokens.never": "Never",
|
||||
"api_tokens.no_tokens_heading": "No API tokens yet",
|
||||
"api_tokens.no_tokens_help": "Create your first token above to get started.",
|
||||
"api_tokens.page_title": "API Tokens – DocuElevate",
|
||||
"api_tokens.revoke": "Revoke",
|
||||
"api_tokens.revoke_prefix": "Revoke token",
|
||||
"api_tokens.status_active": "Active",
|
||||
"api_tokens.status_revoked": "Revoked",
|
||||
"api_tokens.table_aria": "API Tokens",
|
||||
"api_tokens.token_created": "Token created successfully!",
|
||||
"api_tokens.token_name_label": "Token name",
|
||||
"api_tokens.token_name_placeholder": "e.g. CI Pipeline, Webhook Upload, My Script",
|
||||
"api_tokens.usage_heading": "Usage Example",
|
||||
"api_tokens.usage_intro_post": "header with any API request:",
|
||||
"api_tokens.usage_intro_pre": "Use your API token in the",
|
||||
"api_tokens.your_tokens": "Your Tokens",
|
||||
"app.name": "DocuElevate",
|
||||
"audit.col_ip": "IP",
|
||||
"audit.col_resource": "Resource",
|
||||
"audit.col_timestamp": "Timestamp",
|
||||
"audit.critical": "Critical",
|
||||
"audit.filter_action": "Action",
|
||||
"audit.filter_all_actions": "All actions",
|
||||
"audit.filter_all_users": "All users",
|
||||
"audit.filter_resource_placeholder": "e.g. document, user",
|
||||
"audit.filter_resource_type": "Resource Type",
|
||||
"audit.filter_severity": "Severity",
|
||||
"audit.filter_user": "User",
|
||||
"audit.filters_section_label": "Audit log filters",
|
||||
"audit.next": "Next",
|
||||
"audit.next_label": "Next page",
|
||||
"audit.no_events": "No audit events recorded yet.",
|
||||
"audit.no_events_hint": "Significant actions (logins, document operations, settings changes) will appear here.",
|
||||
"audit.page_title": "Audit Logs - DocuElevate",
|
||||
"audit.pagination_label": "Audit log pagination",
|
||||
"audit.prev": "Prev",
|
||||
"audit.prev_label": "Previous page",
|
||||
"audit.refresh_label": "Refresh audit logs",
|
||||
"audit.siem_disabled_title": "SIEM forwarding is disabled",
|
||||
"audit.siem_enabled_title": "Events are being forwarded to ",
|
||||
"audit.siem_off": "SIEM: Off",
|
||||
"audit.subtitle": "Comprehensive, append-only record of all significant actions.",
|
||||
"audit.table_label": "Audit log events",
|
||||
"audit.title": "Audit Logs",
|
||||
"auth.confirm_password": "Confirm Password",
|
||||
"auth.create_account": "Create account",
|
||||
"auth.display_name_label": "Display Name",
|
||||
"auth.email_label": "Email",
|
||||
"auth.forgot_password": "Forgot Password?",
|
||||
"auth.forgot_username": "Forgot username?",
|
||||
"auth.login": "Log In",
|
||||
"auth.login_title": "Log In",
|
||||
"auth.logo_alt": "DocuElevate Logo",
|
||||
"auth.logout": "Log Out",
|
||||
"auth.my_account": "My Account",
|
||||
"auth.no_account": "Don't have an account?",
|
||||
"auth.or_continue_with": "Or continue with",
|
||||
"auth.password_label": "Password",
|
||||
"auth.profile": "Profile",
|
||||
"auth.remember_me": "Remember me",
|
||||
"auth.return_home": "Return to Home",
|
||||
"auth.sign_in": "Sign in",
|
||||
"auth.sign_in_sso": "Sign in with SSO",
|
||||
"auth.sign_in_with": "Sign in with",
|
||||
"auth.sign_in_with_username": "Sign in with username",
|
||||
"auth.signup": "Sign Up",
|
||||
"auth.signup_title": "Sign Up",
|
||||
"auth.username_label": "Username",
|
||||
"auth.username_or_email": "Username or Email",
|
||||
"auth.verify_email_back_sign_in": "Back to sign in",
|
||||
"auth.verify_email_expiry": "The link expires in 24 hours. If you don’t see the email, check your spam folder.",
|
||||
"auth.verify_email_heading": "Check your inbox",
|
||||
"auth.verify_email_message": "We’ve sent you a verification email. Please click the link in the email to activate your account.",
|
||||
"auth.verify_email_page_title": "DocuElevate - Verify Your Email",
|
||||
"auth.verify_email_resend_aria_label": "Email address for resend",
|
||||
"auth.verify_email_resend_button": "Resend verification email",
|
||||
"auth.verify_email_resend_label": "Email address",
|
||||
"auth.verify_email_resend_placeholder": "Enter your email address",
|
||||
"auth.verify_email_resend_prompt": "Didn’t receive it?",
|
||||
"backup.archives_heading": "Backup Archives",
|
||||
"backup.backup_now": "Backup Now",
|
||||
"backup.clean_up": "Clean Up",
|
||||
"backup.cleanup_title": "Run retention cleanup now",
|
||||
"backup.col_created": "Created",
|
||||
"backup.col_filename": "Filename",
|
||||
"backup.col_size": "Size",
|
||||
"backup.col_storage": "Storage",
|
||||
"backup.col_type": "Type",
|
||||
"backup.config_auto_backup": "Auto-backup",
|
||||
"backup.config_remote_dest": "Remote destination",
|
||||
"backup.config_retention": "Retention",
|
||||
"backup.config_total_size": "Total local size",
|
||||
"backup.confirm_btn": "Confirm",
|
||||
"backup.confirm_title": "Confirm action",
|
||||
"backup.heading": "Backup Management",
|
||||
"backup.local_only": "Local only",
|
||||
"backup.no_backups": "No backups yet.",
|
||||
"backup.no_backups_hint": "Click Backup Now to create your first backup.",
|
||||
"backup.page_title": "Backup Management",
|
||||
"backup.records_label": "records",
|
||||
"backup.restore_btn": "Restore",
|
||||
"backup.restore_desc_mid": "backup archive to restore the database.",
|
||||
"backup.restore_desc_pre": "Upload a",
|
||||
"backup.restore_desc_warning": "This will overwrite all current data.",
|
||||
"backup.restore_file_label": "Backup archive (.db.gz)",
|
||||
"backup.restore_heading": "Restore from File",
|
||||
"backup.restoring": "Restoring…",
|
||||
"backup.retention_daily_detail": "– kept for 3 weeks",
|
||||
"backup.retention_heading": "Retention policy",
|
||||
"backup.retention_hourly_detail": "– kept for 4 days",
|
||||
"backup.retention_note": "Backups beyond these limits are automatically pruned after each new backup is created.",
|
||||
"backup.retention_weekly_detail": "– kept for ~3 months",
|
||||
"backup.snapshots": "snapshots",
|
||||
"backup.status_ok": "ok",
|
||||
"backup.storage_local": "local",
|
||||
"backup.subtitle": "Database backups are created automatically: hourly (4 days), daily (3 weeks), weekly (13 weeks).",
|
||||
"backup.table_aria": "Backup archives",
|
||||
"backup.trigger_daily": "Backup Now (Daily)",
|
||||
"backup.trigger_hourly": "Backup Now (Hourly)",
|
||||
"backup.trigger_weekly": "Backup Now (Weekly)",
|
||||
"backup.type_daily": "Daily",
|
||||
"backup.type_hourly": "Hourly",
|
||||
"backup.type_weekly": "Weekly",
|
||||
"billing.go_to_dashboard": "Go to dashboard",
|
||||
"billing.manage_subscription": "Manage subscription",
|
||||
"billing.success_heading": "You're all set!",
|
||||
"billing.success_message": "Your subscription has been activated. Thank you for choosing DocuElevate!",
|
||||
"billing.success_page_title": "DocuElevate - Subscription Activated",
|
||||
"common.actions": "Actions",
|
||||
"common.active": "Active",
|
||||
"common.all": "All",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"common.close": "Close",
|
||||
"common.col_pending": "Pending",
|
||||
"common.completed": "Completed",
|
||||
"common.confirm": "Confirm",
|
||||
"common.copied": "Copied!",
|
||||
"common.copy": "Copy",
|
||||
"common.create": "Create",
|
||||
"common.created": "Created",
|
||||
"common.date": "Date",
|
||||
"common.delete": "Delete",
|
||||
"common.description": "Description",
|
||||
"common.details": "Details",
|
||||
"common.disabled": "Disabled",
|
||||
"common.download": "Download",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "Edit",
|
||||
"common.enabled": "Enabled",
|
||||
"common.error": "Error",
|
||||
"common.failed": "Failed",
|
||||
"common.filter": "Filter",
|
||||
"common.inactive": "Inactive",
|
||||
"common.info": "Info",
|
||||
"common.loading": "Loading...",
|
||||
"common.name": "Name",
|
||||
"common.next": "Next",
|
||||
"common.next_page": "Next page",
|
||||
"common.no": "No",
|
||||
"common.none": "None",
|
||||
"common.page": "Page",
|
||||
"common.pending": "Pending",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "Processing",
|
||||
"common.refresh": "Refresh",
|
||||
"common.reset": "Reset",
|
||||
"common.retry": "Retry",
|
||||
"common.save": "Save",
|
||||
"common.search": "Search",
|
||||
"common.select": "Select",
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "Size",
|
||||
"common.status": "Status",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "Success",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "Type",
|
||||
"common.updated": "Updated",
|
||||
"common.upload": "Upload",
|
||||
"common.view": "View",
|
||||
"common.warning": "Warning",
|
||||
"common.yes": "Yes",
|
||||
"cookie.accept": "Got it",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate uses only essential session cookies required for authentication and service operation. No tracking or analytics cookies are used.",
|
||||
"cookie.notice_label": "Cookie notice",
|
||||
"cookie.policy_link": "Cookie Policy",
|
||||
"cookie.privacy_link": "Privacy Notice",
|
||||
"credentials.col_action": "Action",
|
||||
"credentials.col_credential": "Credential",
|
||||
"credentials.col_source": "Source",
|
||||
"credentials.configured": "Configured",
|
||||
"credentials.edit_in_settings": "Edit in Settings",
|
||||
"credentials.legend_db": "Value stored in the database (encrypted at rest; overrides environment variable)",
|
||||
"credentials.legend_env_after": " file",
|
||||
"credentials.legend_env_before": "Value from environment variable or ",
|
||||
"credentials.legend_missing": "Credential not set — integration will not work",
|
||||
"credentials.legend_restart": "Restart required when this credential is rotated",
|
||||
"credentials.legend_title": "Legend",
|
||||
"credentials.manage_settings": "Manage Settings",
|
||||
"credentials.not_configured": "Not Configured",
|
||||
"credentials.page_title": "Credential Audit - DocuElevate",
|
||||
"credentials.raw_json": "Raw JSON (API)",
|
||||
"credentials.restart_title": "Restart required after rotating this credential",
|
||||
"credentials.source_db_title": "Stored in database (encrypted)",
|
||||
"credentials.source_env_title": "From environment variable",
|
||||
"credentials.status_missing": "Missing",
|
||||
"credentials.subtitle": "Overview of all sensitive credentials used by DocuElevate. No secret values are shown here — only whether each credential is configured and where it comes from.",
|
||||
"credentials.table_for": "Credentials for",
|
||||
"credentials.title": "Credential Audit",
|
||||
"credentials.total_credentials": "Total Credentials",
|
||||
"dashboard.active_integrations": "Active Integrations",
|
||||
"dashboard.files_this_month": "Files This Month",
|
||||
"dashboard.files_today": "Files Today",
|
||||
"dashboard.ocr_processed": "OCR Processed",
|
||||
"dashboard.quick_actions": "Quick Actions",
|
||||
"dashboard.recent_activity": "Recent Activity",
|
||||
"dashboard.storage_targets": "Storage Targets",
|
||||
"dashboard.title": "Dashboard",
|
||||
"dashboard.total_files": "Total Files",
|
||||
"dashboard.welcome": "Welcome to DocuElevate",
|
||||
"duplicates.file_id_label": "File ID",
|
||||
"duplicates.file_id_placeholder": "e.g. 42",
|
||||
"duplicates.find_btn": "Find",
|
||||
"duplicates.found_files": "duplicate file(s) total.",
|
||||
"duplicates.found_groups": "duplicate group(s) with",
|
||||
"duplicates.found_prefix": "Found",
|
||||
"duplicates.group_aria": "Duplicate group",
|
||||
"duplicates.heading": "Duplicate Documents",
|
||||
"duplicates.how_it_works_heading": "How near-duplicate detection works",
|
||||
"duplicates.max_results_label": "Max results",
|
||||
"duplicates.near_dup_desc": "Select a document to check whether any other files contain the same (or very similar) content — even if they were scanned at different times and have different SHA-256 hashes.",
|
||||
"duplicates.near_dup_heading": "Find Near-Duplicates for a Document",
|
||||
"duplicates.no_exact_heading": "No exact duplicates found",
|
||||
"duplicates.page_title": "Duplicate Documents - DocuElevate",
|
||||
"duplicates.pagination_aria": "Pagination",
|
||||
"duplicates.role_duplicate": "Duplicate",
|
||||
"duplicates.role_original": "Original",
|
||||
"duplicates.tab_exact": "Exact Duplicates",
|
||||
"duplicates.tab_near": "Near-Duplicate Finder",
|
||||
"duplicates.tabs_aria": "Duplicate detection tabs",
|
||||
"duplicates.threshold_label": "Similarity threshold",
|
||||
"duplicates.view_dup_aria": "View duplicate file",
|
||||
"duplicates.view_original_aria": "View original file",
|
||||
"error.404_code": "404",
|
||||
"error.404_heading": "Oops, we couldn’t find that page!",
|
||||
"error.404_home": "Return Home",
|
||||
"error.404_message": "It seems DocuElevate has misplaced the document you were looking for. Don’t worry – we’ve got your back.",
|
||||
"error.404_title": "404 - Not Found",
|
||||
"error.500_code": "500",
|
||||
"error.500_debug_info": "Show Debug Info",
|
||||
"error.500_description": "Our servers encountered a mishap and need a moment.",
|
||||
"error.500_heading": "Oops! Something Went Wrong.",
|
||||
"error.500_home": "Go Home",
|
||||
"error.500_img_alt": "Illustration of a server error",
|
||||
"error.500_message1": "Our servers encountered a mishap and need a moment. Maybe the hamsters spilled their coffee?",
|
||||
"error.500_message2": "We're already on it—sorting files, rebooting servers, and recalibrating flux capacitors.",
|
||||
"error.500_title": "Server Error - DocuElevate",
|
||||
"error.forbidden": "Forbidden",
|
||||
"error.forbidden_message": "You do not have permission to access this page.",
|
||||
"error.not_found": "Page not found",
|
||||
"error.not_found_message": "The page you are looking for does not exist.",
|
||||
"error.server_error": "Internal Server Error",
|
||||
"error.server_error_message": "Something went wrong. Please try again later.",
|
||||
"error.unauthorized": "Unauthorized",
|
||||
"error.unauthorized_message": "You need to log in to access this page.",
|
||||
"files.action_delete": "Delete file",
|
||||
"files.action_details": "View details",
|
||||
"files.action_preview": "Quick preview",
|
||||
"files.bulk_clear_selection": "Clear Selection",
|
||||
"files.bulk_cloud_ocr": "Re-run Cloud OCR",
|
||||
"files.bulk_delete": "Delete Selected",
|
||||
"files.bulk_download": "Download as ZIP",
|
||||
"files.bulk_reprocess": "Reprocess Selected",
|
||||
"files.delete_modal_cancel": "Cancel",
|
||||
"files.delete_modal_confirm": "Delete",
|
||||
"files.delete_modal_message": "Are you sure you want to delete this file?",
|
||||
"files.delete_modal_title": "Confirm Deletion",
|
||||
"files.document_title": "Document Title",
|
||||
"files.drop_overlay_hint": "Supports PDF, Office docs, images, HTML, Markdown, and more – folders are processed recursively",
|
||||
"files.drop_overlay_title": "Drop files or folders anywhere to upload",
|
||||
"files.error_hint": "This might be due to a configuration or import issue. Please check the server logs.",
|
||||
"files.file_size": "File Size",
|
||||
"files.filename": "Filename",
|
||||
"files.files_selected": "files selected",
|
||||
"files.filter_all_providers": "All Providers",
|
||||
"files.filter_all_statuses": "All Statuses",
|
||||
"files.filter_all_types": "All Types",
|
||||
"files.filter_apply": "Apply Filters",
|
||||
"files.filter_clear": "Clear",
|
||||
"files.filter_date_from": "Date From",
|
||||
"files.filter_date_from_aria": "Filter from date",
|
||||
"files.filter_date_to": "Date To",
|
||||
"files.filter_date_to_aria": "Filter to date",
|
||||
"files.filter_form_aria": "Filter files",
|
||||
"files.filter_mime_type": "MIME Type",
|
||||
"files.filter_ocr_all": "All Files",
|
||||
"files.filter_ocr_good": "Good quality",
|
||||
"files.filter_ocr_poor": "Poor quality",
|
||||
"files.filter_ocr_quality": "OCR Quality",
|
||||
"files.filter_ocr_quality_aria": "Filter by OCR quality score",
|
||||
"files.filter_ocr_unchecked": "Not yet assessed",
|
||||
"files.filter_search_label": "Search Filename",
|
||||
"files.filter_search_placeholder": "Enter filename...",
|
||||
"files.filter_storage_provider": "Storage Provider",
|
||||
"files.filter_tags_aria": "Filter by tags (comma-separated)",
|
||||
"files.filter_tags_placeholder": "e.g. invoice,amazon",
|
||||
"files.fulltext_search_label": "Full-Text Search (OCR text, metadata, tags)",
|
||||
"files.fulltext_search_placeholder": "Search document content, sender, tags, type...",
|
||||
"files.no_files": "No files found",
|
||||
"files.ocr_status": "OCR Status",
|
||||
"files.page_title": "File Records",
|
||||
"files.pagination_files": "files",
|
||||
"files.pagination_first": "First",
|
||||
"files.pagination_last": "Last",
|
||||
"files.pagination_nav_aria": "File list pagination",
|
||||
"files.pagination_next": "Next",
|
||||
"files.pagination_of": "of",
|
||||
"files.pagination_previous": "Previous",
|
||||
"files.pagination_showing": "Showing",
|
||||
"files.preview_modal_close": "Close preview",
|
||||
"files.preview_modal_title": "Preview",
|
||||
"files.queue_banner_items": "item(s) are currently queued or being processed. Files will appear here once processing completes.",
|
||||
"files.queue_banner_link": "View Queue",
|
||||
"files.saved_searches_empty": "No saved searches yet",
|
||||
"files.saved_searches_error": "Could not load saved searches",
|
||||
"files.saved_searches_label": "Saved Searches",
|
||||
"files.saved_searches_save": "Save Current",
|
||||
"files.saved_searches_save_aria": "Save current filters as a saved search",
|
||||
"files.search_results_empty": "No results found.",
|
||||
"files.search_results_title": "Search Results",
|
||||
"files.status_duplicate": "Duplicate",
|
||||
"files.table_actions": "Actions",
|
||||
"files.table_aria": "File records",
|
||||
"files.table_created_at": "Created At",
|
||||
"files.table_empty": "No files found",
|
||||
"files.table_id": "ID",
|
||||
"files.table_mime_type": "MIME Type",
|
||||
"files.table_original_filename": "Original Filename",
|
||||
"files.table_select_all": "Select all files on this page",
|
||||
"files.tags": "Tags",
|
||||
"files.title": "Files",
|
||||
"files.upload_modal_aria": "Upload progress",
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "Uploaded",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "Attributions",
|
||||
"footer.cookies": "Cookies",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
"footer.imprint": "Imprint",
|
||||
"footer.license": "License",
|
||||
"footer.navigation": "Footer navigation",
|
||||
"footer.privacy": "Privacy",
|
||||
"footer.terms": "Terms",
|
||||
"footer.version": "Version {version}",
|
||||
"help.destinations_dropbox": "Dropbox",
|
||||
"help.destinations_dropbox_desc": "OAuth-linked. Files land in your chosen folder.",
|
||||
"help.destinations_email": "Email Forwarding",
|
||||
"help.destinations_email_desc": "Processed files sent as SMTP attachments.",
|
||||
"help.destinations_google_drive": "Google Drive",
|
||||
"help.destinations_google_drive_desc": "Service account or OAuth. Supports shared drives.",
|
||||
"help.destinations_heading": "Destinations – Where Documents Go",
|
||||
"help.destinations_nextcloud": "Nextcloud / WebDAV",
|
||||
"help.destinations_nextcloud_desc": "Self-hosted cloud storage via WebDAV.",
|
||||
"help.destinations_onedrive": "OneDrive",
|
||||
"help.destinations_onedrive_desc": "Microsoft Graph API integration.",
|
||||
"help.destinations_paperless": "Paperless-ngx",
|
||||
"help.destinations_paperless_desc": "Push documents straight into Paperless for archival.",
|
||||
"help.destinations_s3": "Amazon S3",
|
||||
"help.destinations_s3_desc": "Any S3-compatible bucket (AWS, MinIO, Wasabi).",
|
||||
"help.destinations_sftp": "SFTP / FTP",
|
||||
"help.destinations_sftp_desc": "Secure file transfer to any server.",
|
||||
"help.destinations_webhook": "Webhook",
|
||||
"help.destinations_webhook_desc": "POST metadata to any external endpoint.",
|
||||
"help.documentation": "Documentation",
|
||||
"help.faq": "Frequently Asked Questions",
|
||||
"help.faq_1_a": "Navigate to the Upload page, drag-and-drop your files or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.faq_1_q": "How do I upload documents?",
|
||||
"help.faq_2_a": "PDF, JPEG, PNG, TIFF, BMP, GIF, DOCX, XLSX, PPTX, ODT, ODS, TXT, RTF, and HTML. Non-PDF files are automatically converted to PDF before processing.",
|
||||
"help.faq_2_q": "Which file formats are supported?",
|
||||
"help.faq_3_a": "Yes. Go to Email Ingestion, add an IMAP account, and DocuElevate will poll for new messages and process attachments automatically.",
|
||||
"help.faq_3_q": "Can I ingest documents from email?",
|
||||
"help.faq_4_a": "Pipelines let you chain processing steps – OCR, AI extraction, format conversion – and route the result to one or more destinations. Create and manage them from the Pipelines page.",
|
||||
"help.faq_4_q": "How do processing pipelines work?",
|
||||
"help.faq_5_a": "DocuElevate encrypts credentials at rest, communicates over TLS, and never stores your documents longer than necessary. See the Privacy Notice for full details.",
|
||||
"help.faq_5_q": "Is my data secure?",
|
||||
"help.faq_heading": "Frequently Asked Questions",
|
||||
"help.getting_started": "Getting Started",
|
||||
"help.heading": "Help Center",
|
||||
"help.page_title": "Help Center",
|
||||
"help.privacy_notice": "Privacy Notice",
|
||||
"help.quickstart_heading": "Quick Start",
|
||||
"help.quickstart_storage": "Connect Storage",
|
||||
"help.quickstart_storage_desc": "Head to Settings and link your cloud accounts. Processed documents are automatically routed to every destination you configure.",
|
||||
"help.quickstart_upload": "Upload Documents",
|
||||
"help.quickstart_upload_desc": "Drag & drop files onto the Upload page or click Choose File. DocuElevate converts images and office documents to PDF, runs OCR, and extracts metadata automatically.",
|
||||
"help.quickstart_workflows": "Automate Workflows",
|
||||
"help.quickstart_workflows_desc": "Create Pipelines to define multi-step processing and routing rules. Combine OCR, AI extraction, format conversion, and delivery in a single flow.",
|
||||
"help.sources_email_ingestion": "Email Ingestion (IMAP)",
|
||||
"help.sources_email_ingestion_desc": "Forward documents to a dedicated mailbox. Under Email Ingestion, add one or more IMAP accounts. DocuElevate polls for new messages and processes attachments automatically.",
|
||||
"help.sources_heading": "Sources – Getting Documents In",
|
||||
"help.sources_rest_api": "REST API",
|
||||
"help.sources_rest_api_desc": "Integrate programmatically by POST-ing files to /api/upload. Ideal for scripts, watched folders, scanners, or third-party tools like Zapier and n8n.",
|
||||
"help.sources_scanner": "Scanner & Mobile",
|
||||
"help.sources_scanner_desc": "Point network scanners at DocuElevate's upload endpoint or use any mobile scanning app that supports custom HTTP destinations.",
|
||||
"help.sources_web_upload": "Web Upload",
|
||||
"help.sources_web_upload_desc": "The fastest way to get started. Open the Upload page, drop one or more files, and DocuElevate takes care of the rest. Supported formats include PDF, JPEG, PNG, TIFF, DOCX, XLSX, and more.",
|
||||
"help.subheading": "Everything you need to get the most out of DocuElevate. Browse topics below or search for what you need.",
|
||||
"help.support": "Support",
|
||||
"help.support_admin_message": "Contact your administrator for support information.",
|
||||
"help.support_description": "Can’t find what you’re looking for? Our support team is here to help.",
|
||||
"help.support_heading": "Contact Support",
|
||||
"help.support_ticket_button": "Submit a Ticket",
|
||||
"help.support_ticket_heading": "Open a Support Ticket",
|
||||
"help.title": "Help Center",
|
||||
"help.workflows_creating": "Creating a Pipeline",
|
||||
"help.workflows_definition": "A Pipeline is a series of processing steps that run automatically whenever a document is ingested. Each step can transform, enrich, or route the document.",
|
||||
"help.workflows_heading": "Workflows & Pipelines",
|
||||
"help.workflows_step_1": "Convert to PDF",
|
||||
"help.workflows_step_1_create": "Go to Pipelines in the main menu.",
|
||||
"help.workflows_step_2": "OCR – extract text",
|
||||
"help.workflows_step_2_create": "Click New Pipeline and give it a name.",
|
||||
"help.workflows_step_3": "AI metadata extraction",
|
||||
"help.workflows_step_3_create": "Add the processing steps you need.",
|
||||
"help.workflows_step_4": "Deliver to one or more destinations",
|
||||
"help.workflows_step_4_create": "Choose one or more delivery destinations.",
|
||||
"help.workflows_step_5_create": "Save – new documents will be processed through this pipeline automatically.",
|
||||
"help.workflows_typical_steps": "Typical Steps",
|
||||
"help.workflows_what_is": "What is a Pipeline?",
|
||||
"index.badge_intelligent": "Intelligent Document Processing",
|
||||
"index.button_browse_files": "Browse Files",
|
||||
"index.button_upload": "Upload",
|
||||
"index.capabilities_cloud": "Cloud storage: Dropbox, OneDrive, Google Drive, NextCloud",
|
||||
"index.capabilities_ingestion": "Email & URL-based document ingestion",
|
||||
"index.capabilities_ocr": "OCR & metadata extraction with AI",
|
||||
"index.capabilities_paperless": "Paperless-ngx integration for document management",
|
||||
"index.capabilities_title": "Capabilities",
|
||||
"index.capabilities_workflows": "Automated classification & routing workflows",
|
||||
"index.cta_description": "Join teams already automating their document processing with DocuElevate.",
|
||||
"index.cta_heading": "Ready to elevate your document workflow?",
|
||||
"index.cta_pricing": "See pricing",
|
||||
"index.cta_signup": "Create a free account",
|
||||
"index.dashboard_subtitle": "Intelligent document processing & management",
|
||||
"index.dashboard_subtitle_teams": "Intelligent document processing & management — built for teams",
|
||||
"index.feature_ai": "AI Metadata Extraction",
|
||||
"index.feature_ai_desc": "OpenAI, Claude, Gemini, and other pluggable AI providers classify documents and pull out key fields like dates, amounts, and subjects.",
|
||||
"index.feature_cloud": "Multi-Cloud Storage",
|
||||
"index.feature_cloud_desc": "Route processed files to Dropbox, Google Drive, OneDrive, Amazon S3, Nextcloud, Paperless NGX, WebDAV, FTP/SFTP, and more.",
|
||||
"index.feature_email": "Email & IMAP Ingestion",
|
||||
"index.feature_email_desc": "Automatically pull documents from Gmail or any IMAP mailbox — no manual uploads needed.",
|
||||
"index.feature_ocr": "OCR & Text Extraction",
|
||||
"index.feature_ocr_desc": "Azure Document Intelligence converts scanned PDFs and images into fully searchable text automatically.",
|
||||
"index.feature_pipelines": "Custom Pipelines",
|
||||
"index.feature_pipelines_desc": "Build processing pipelines with configurable steps — OCR, AI extraction, format conversion, and storage routing in any order.",
|
||||
"index.feature_search": "Full-Text Search",
|
||||
"index.feature_search_desc": "Instantly find any document by content, metadata, or tags across your entire archive.",
|
||||
"index.feature_section_title": "Everything you need for smart document workflows",
|
||||
"index.getting_started": "Getting Started",
|
||||
"index.getting_started_1": "Configure integrations via System Status",
|
||||
"index.getting_started_2": "Upload your first document",
|
||||
"index.getting_started_3": "Review results in Files",
|
||||
"index.getting_started_learn": "Learn more about DocuElevate",
|
||||
"index.hero_description": "DocuElevate ingests your documents, runs OCR, extracts metadata with AI, and routes files to Dropbox, Google Drive, OneDrive, S3, Nextcloud, and more — all in one seamless pipeline.",
|
||||
"index.hero_heading": "From upload to insight — automatically.",
|
||||
"index.hero_login": "Log In",
|
||||
"index.hero_pricing": "View Plans & Pricing",
|
||||
"index.hero_signup": "Get Started — it’s free",
|
||||
"index.integrations_active": "Active integrations",
|
||||
"index.integrations_storage": "Storage targets",
|
||||
"index.integrations_title": "Integrations",
|
||||
"index.integrations_view_status": "View system status",
|
||||
"index.page_title_dashboard": "Dashboard",
|
||||
"index.page_title_public": "Intelligent Document Processing",
|
||||
"index.platform_overview": "Platform overview",
|
||||
"index.quick_actions": "Quick Actions",
|
||||
"index.quick_documents": "My Documents",
|
||||
"index.quick_documents_desc": "Browse your processed files",
|
||||
"index.quick_search": "Search",
|
||||
"index.quick_search_desc": "Full-text search across documents",
|
||||
"index.quick_subscription": "My Subscription",
|
||||
"index.quick_subscription_desc": "View plan & usage details",
|
||||
"index.quick_system_status": "System Status",
|
||||
"index.quick_system_status_desc": "Check integration health",
|
||||
"index.quick_upload": "Upload Document",
|
||||
"index.quick_upload_desc": "Process a new file",
|
||||
"index.quick_view_files": "View All Files",
|
||||
"index.quick_view_files_desc": "Browse processed documents",
|
||||
"index.single_user_heading": "DocuElevate Dashboard",
|
||||
"index.single_user_subtitle": "Intelligent document processing & management",
|
||||
"index.stat_active_integrations": "Active Integrations",
|
||||
"index.stat_active_users": "Active users",
|
||||
"index.stat_files_month": "Files this month",
|
||||
"index.stat_files_today": "Files today",
|
||||
"index.stat_storage_targets": "Storage Targets",
|
||||
"index.stat_total_files": "Total files",
|
||||
"index.tier_plan": "Plan",
|
||||
"index.tier_upgrade": "Upgrade",
|
||||
"index.tier_view_details": "View full details",
|
||||
"index.upgrade_daily_limits": "Higher daily & monthly limits",
|
||||
"index.upgrade_description": "Unlock more documents, more destinations and priority support.",
|
||||
"index.upgrade_destinations": "More storage destinations",
|
||||
"index.upgrade_ocr_pages": "More OCR pages",
|
||||
"index.upgrade_plan": "Upgrade your plan",
|
||||
"index.upgrade_view_pricing": "View plans & pricing",
|
||||
"index.usage_lifetime": "Lifetime files",
|
||||
"index.usage_month": "Files this month",
|
||||
"index.usage_my_usage": "My usage",
|
||||
"index.usage_today": "Files today",
|
||||
"index.usage_unlimited": "Unlimited",
|
||||
"integrations.configure": "Configure",
|
||||
"integrations.connect": "Connect",
|
||||
"integrations.connected": "Connected",
|
||||
"integrations.disconnect": "Disconnect",
|
||||
"integrations.empty_state": "No integrations configured",
|
||||
"integrations.folder_label": "Folder",
|
||||
"integrations.host_label": "Host",
|
||||
"integrations.imap_settings": "IMAP Settings",
|
||||
"integrations.not_connected": "Not Connected",
|
||||
"integrations.page_title": "Integrations",
|
||||
"integrations.password_label": "Password",
|
||||
"integrations.port_label": "Port",
|
||||
"integrations.title": "Integrations",
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "Language changed to {language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
"language.de": "Deutsch",
|
||||
"language.el": "Ελληνικά",
|
||||
"language.en": "English",
|
||||
"language.es": "Español",
|
||||
"language.et": "Eesti",
|
||||
"language.fi": "Suomi",
|
||||
"language.fr": "Français",
|
||||
"language.ga": "Gaeilge",
|
||||
"language.hr": "Hrvatski",
|
||||
"language.hu": "Magyar",
|
||||
"language.is": "Íslenska",
|
||||
"language.it": "Italiano",
|
||||
"language.lb": "Lëtzebuergesch",
|
||||
"language.lt": "Lietuvių",
|
||||
"language.lv": "Latviešu",
|
||||
"language.nb": "Norsk",
|
||||
"language.nl": "Nederlands",
|
||||
"language.pl": "Polski",
|
||||
"language.pt": "Português",
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "Language",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
"language.tr": "Türkçe",
|
||||
"language.uk": "Українська",
|
||||
"language.zh": "中文",
|
||||
"nav.about": "About",
|
||||
"nav.admin": "Admin",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "Admin actions",
|
||||
"nav.admin_menu": "Admin menu",
|
||||
"nav.api_docs": "API Docs",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "Backup & Restore",
|
||||
"nav.credentials": "Credentials",
|
||||
"nav.dark_mode": "Dark Mode",
|
||||
"nav.dashboard": "Dashboard",
|
||||
"nav.developer_docs": "Developer Docs",
|
||||
"nav.duplicates": "Duplicates",
|
||||
"nav.file_manager": "File Manager",
|
||||
"nav.files": "Files",
|
||||
"nav.help": "Help",
|
||||
"nav.help_center": "Help Center",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "Integrations",
|
||||
"nav.light_mode": "Light Mode",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "Main navigation",
|
||||
"nav.notifications": "Notifications",
|
||||
"nav.open_main_menu": "Open main menu",
|
||||
"nav.pipelines": "Pipelines",
|
||||
"nav.plan_designer": "Plan Designer",
|
||||
"nav.pricing": "Pricing",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "Queue Monitor",
|
||||
"nav.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.search": "Search",
|
||||
"nav.settings": "Settings",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "Similarity",
|
||||
"nav.skip_to_content": "Skip to main content",
|
||||
"nav.status": "Status",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "Toggle dark mode",
|
||||
"nav.toggle_nav": "Toggle navigation menu",
|
||||
"nav.upload": "Upload",
|
||||
"nav.users": "Users",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
"notifications.manage_desc": "Manage your notification inbox, targets, and event preferences",
|
||||
"notifications.mark_all_read": "Mark All as Read",
|
||||
"notifications.mark_all_read_btn": "Mark all read",
|
||||
"notifications.mark_read": "Mark as Read",
|
||||
"notifications.no_notifications": "No notifications",
|
||||
"notifications.page_title": "Notifications",
|
||||
"notifications.tab_inbox": "Inbox",
|
||||
"notifications.tab_settings": "Settings",
|
||||
"notifications.title": "Notifications",
|
||||
"notifications.unread_count": "{count} unread notifications",
|
||||
"pipelines.active_label": "Active",
|
||||
"pipelines.add_step_btn": "Add Step",
|
||||
"pipelines.create": "Create Pipeline",
|
||||
"pipelines.custom_label_label": "Custom Label",
|
||||
"pipelines.default_label": "Default",
|
||||
"pipelines.description_label": "Description",
|
||||
"pipelines.description_placeholder": "Optional description",
|
||||
"pipelines.disabled_label": "Disabled",
|
||||
"pipelines.edit": "Edit Pipeline",
|
||||
"pipelines.empty_state": "No pipelines yet",
|
||||
"pipelines.empty_state_hint": "Create your first pipeline to define custom document processing workflows.",
|
||||
"pipelines.enabled_label": "Enabled",
|
||||
"pipelines.force_cloud_ocr_label": "Force cloud OCR (skip local text extraction)",
|
||||
"pipelines.inactive_label": "Inactive",
|
||||
"pipelines.loading": "Loading pipelines…",
|
||||
"pipelines.name_placeholder": "My pipeline",
|
||||
"pipelines.new_pipeline_btn": "New Pipeline",
|
||||
"pipelines.no_steps": "No steps defined. Add a step to start building your pipeline.",
|
||||
"pipelines.ocr_auto": "Auto (use system default)",
|
||||
"pipelines.ocr_language_hint": "Overrides the global language setting for Tesseract/EasyOCR. Azure and Mistral auto-detect the language.",
|
||||
"pipelines.ocr_language_label": "OCR Language",
|
||||
"pipelines.optional_suffix": "(optional)",
|
||||
"pipelines.page_title": "Processing Pipelines",
|
||||
"pipelines.set_default": "Set as my default pipeline",
|
||||
"pipelines.step_label_placeholder": "Override the default step name",
|
||||
"pipelines.step_type_label": "Step Type",
|
||||
"pipelines.subtitle_intro": "Define and manage custom document processing workflows.",
|
||||
"pipelines.subtitle_system_post": "badge and are visible to all users.",
|
||||
"pipelines.subtitle_system_pre": "System pipelines (created by admins) are shown with a",
|
||||
"pipelines.system_label": "System",
|
||||
"pipelines.system_pipeline_label": "System pipeline (visible to all users)",
|
||||
"pipelines.title": "Processing Pipelines",
|
||||
"queue.active_tasks": "Active Tasks",
|
||||
"queue.auto_refresh_1": "Auto-refreshes every",
|
||||
"queue.auto_refresh_2": "seconds",
|
||||
"queue.col_arguments": "Arguments",
|
||||
"queue.col_current_step": "Current Step",
|
||||
"queue.col_file": "File",
|
||||
"queue.col_files": "Files",
|
||||
"queue.col_queue": "Queue",
|
||||
"queue.col_state": "State",
|
||||
"queue.col_task": "Task",
|
||||
"queue.col_task_id": "Task ID",
|
||||
"queue.files_processing": "Files Processing",
|
||||
"queue.heading": "Queue Monitor",
|
||||
"queue.last_updated": "Last updated:",
|
||||
"queue.loading_stats": "Loading queue statistics…",
|
||||
"queue.no_active_tasks": "No active tasks",
|
||||
"queue.no_data": "No data",
|
||||
"queue.no_files_processing": "No files currently processing",
|
||||
"queue.page_title": "Queue Monitor",
|
||||
"queue.processing_pipeline": "Processing Pipeline",
|
||||
"queue.queued_tasks": "Queued Tasks",
|
||||
"queue.recently_processing": "Recently Processing Files",
|
||||
"queue.redis_queues": "Redis Queues",
|
||||
"queue.subtitle": "Real-time view of the document processing pipeline and Celery task queues.",
|
||||
"queue.workers_online": "Workers Online",
|
||||
"search.button": "Search",
|
||||
"search.error_message": "Search is temporarily unavailable. Please try again in a moment.",
|
||||
"search.filter_aria_clear": "Clear all filters",
|
||||
"search.filter_clear_button": "Clear Filters",
|
||||
"search.filter_date_from": "Date From",
|
||||
"search.filter_date_to": "Date To",
|
||||
"search.filter_document_type": "Document Type",
|
||||
"search.filter_document_type_placeholder": "e.g. Invoice",
|
||||
"search.filter_language": "Language",
|
||||
"search.filter_language_placeholder": "e.g. de",
|
||||
"search.filter_sender": "Sender",
|
||||
"search.filter_sender_placeholder": "e.g. ACME Corp",
|
||||
"search.filter_tags": "Tags",
|
||||
"search.filter_tags_placeholder": "e.g. amazon",
|
||||
"search.filter_text_quality": "Text Quality",
|
||||
"search.filter_text_quality_all": "All",
|
||||
"search.filter_text_quality_high": "High",
|
||||
"search.filter_text_quality_low": "Low",
|
||||
"search.filter_text_quality_medium": "Medium",
|
||||
"search.filter_text_quality_no_text": "No text",
|
||||
"search.heading": "Document Search",
|
||||
"search.input_aria_label": "Search documents",
|
||||
"search.input_placeholder": "Search documents by content, sender, tags, type...",
|
||||
"search.loading_indicator": "Searching…",
|
||||
"search.no_results": "No results found",
|
||||
"search.page_title": "Search Documents",
|
||||
"search.placeholder": "Search by filename, content, tags...",
|
||||
"search.result_empty": "No documents found matching your query.",
|
||||
"search.results_count": "{count} results found",
|
||||
"search.saved_aria_save": "Save current search",
|
||||
"search.saved_button": "Save Current",
|
||||
"search.saved_empty": "No saved searches yet",
|
||||
"search.saved_error": "Could not load saved searches",
|
||||
"search.saved_label": "Saved Searches",
|
||||
"search.saved_loading": "Loading...",
|
||||
"search.title": "Search Documents",
|
||||
"settings.audit_log_btn": "Audit Log",
|
||||
"settings.autocomplete_hint": "Type to search known values, or enter any custom value.",
|
||||
"settings.autocomplete_no_matches": "No matches — you can still type a custom value",
|
||||
"settings.autocomplete_placeholder": "Type to search or enter a value…",
|
||||
"settings.boolean_enable_prefix": "Enable",
|
||||
"settings.categories_aria": "Settings categories",
|
||||
"settings.categories_heading": "Categories",
|
||||
"settings.db_wizard_btn": "DB Wizard",
|
||||
"settings.effective_value_label": "Effective value:",
|
||||
"settings.encrypted_suffix": "= encrypted at rest",
|
||||
"settings.encrypted_title": "Value is encrypted at rest in database",
|
||||
"settings.export_btn": "Export",
|
||||
"settings.export_db_only": "DB settings only",
|
||||
"settings.export_full_config": "Full effective config",
|
||||
"settings.jump_to_category": "Jump to category…",
|
||||
"settings.manage_config_prefix": "Manage configuration. Priority:",
|
||||
"settings.model_picker_hint": "Pick from the list or type any model name supported by your provider.",
|
||||
"settings.model_picker_placeholder": "Select a common model or type a custom name…",
|
||||
"settings.no_results_clear": "clear the search",
|
||||
"settings.no_results_heading": "No settings found",
|
||||
"settings.no_results_hint": "Try a different search term or",
|
||||
"settings.page_heading": "Application Settings",
|
||||
"settings.required_label": "(required)",
|
||||
"settings.reset_confirm": "Are you sure you want to reset this setting?",
|
||||
"settings.restart_required_suffix": "= restart required",
|
||||
"settings.revert_btn": "Remove from DB",
|
||||
"settings.revert_title": "Remove DB override and revert to environment variable or default",
|
||||
"settings.reverting": "Reverting…",
|
||||
"settings.save_all_btn": "Save All Changes",
|
||||
"settings.save_error": "Failed to save setting",
|
||||
"settings.save_setting_title": "Save this setting",
|
||||
"settings.save_success": "Setting saved successfully",
|
||||
"settings.saving_state": "Saving…",
|
||||
"settings.search_aria_label": "Search settings",
|
||||
"settings.search_clear_aria": "Clear search",
|
||||
"settings.search_placeholder": "Search settings by name, key, or description…",
|
||||
"settings.settings_count_suffix": "settings",
|
||||
"settings.source_db_badge": "DB",
|
||||
"settings.source_default_badge": "DEFAULT",
|
||||
"settings.source_env_badge": "ENV",
|
||||
"settings.title": "Settings",
|
||||
"settings.toggle_visibility_aria": "Toggle password visibility",
|
||||
"settings.toggle_visibility_title": "Show/hide value",
|
||||
"settings.user_autocomplete_empty": "No matching users found",
|
||||
"settings.user_autocomplete_hint": "Type to search existing users by name, or enter any identifier manually.",
|
||||
"settings.user_autocomplete_placeholder": "Start typing to search users…",
|
||||
"settings.wizard_btn": "Wizard",
|
||||
"shared.col_expiry": "Expiry",
|
||||
"shared.col_file_label": "File / Label",
|
||||
"shared.col_link": "Link",
|
||||
"shared.col_views": "Views",
|
||||
"shared.copy_link_aria": "Copy link to clipboard",
|
||||
"shared.copy_link_title": "Copy link",
|
||||
"shared.create_btn": "Create Link",
|
||||
"shared.create_heading": "Create New Shared Link",
|
||||
"shared.creating": "Creating…",
|
||||
"shared.expiry_12h": "12 hours",
|
||||
"shared.expiry_14d": "14 days",
|
||||
"shared.expiry_1h": "1 hour",
|
||||
"shared.expiry_24h": "24 hours (1 day)",
|
||||
"shared.expiry_30d": "30 days",
|
||||
"shared.expiry_3d": "3 days",
|
||||
"shared.expiry_6h": "6 hours",
|
||||
"shared.expiry_7d": "7 days",
|
||||
"shared.expiry_label": "Expiry",
|
||||
"shared.expiry_never": "Never",
|
||||
"shared.file_id_help_post": "page or in the document detail URL.",
|
||||
"shared.file_id_help_pre": "Find the file ID on the",
|
||||
"shared.file_id_label": "File ID",
|
||||
"shared.file_id_placeholder": "e.g. 42",
|
||||
"shared.files_link": "Files",
|
||||
"shared.heading": "Shared Links",
|
||||
"shared.label_label": "Label",
|
||||
"shared.label_placeholder": "e.g. Shared with Bob",
|
||||
"shared.link_created": "Shared link created!",
|
||||
"shared.link_created_help": "Copy and send this link to the recipient.",
|
||||
"shared.links_count_aria": "number of links",
|
||||
"shared.max_downloads_label": "Max downloads",
|
||||
"shared.no_links": "No shared links yet. Create one above to get started.",
|
||||
"shared.open_in_new_tab": "Open in new tab",
|
||||
"shared.open_link_aria": "Open shared link",
|
||||
"shared.optional": "(optional)",
|
||||
"shared.page_title": "Shared Links – DocuElevate",
|
||||
"shared.password_label": "Password",
|
||||
"shared.password_placeholder": "Leave blank for no password",
|
||||
"shared.password_protected": "Password protected",
|
||||
"shared.refresh_aria": "Refresh shared links list",
|
||||
"shared.revoke_aria_prefix": "Revoke shared link for",
|
||||
"shared.revoke_btn": "Revoke",
|
||||
"shared.status_active": "Active",
|
||||
"shared.status_expired": "Expired",
|
||||
"shared.status_limit_reached": "Limit reached",
|
||||
"shared.status_revoked": "Revoked",
|
||||
"shared.subtitle": "Share documents with anyone via a time-limited or view-limited link. Recipients do not need a DocuElevate account. Links can be password-protected and revoked at any time.",
|
||||
"shared.table_aria": "Shared links",
|
||||
"shared.unlimited_placeholder": "Unlimited",
|
||||
"shared.your_links": "Your Shared Links",
|
||||
"similarity.backfill_auto": "The background task will compute them automatically every 5 minutes, or you can",
|
||||
"similarity.files_missing_text": "file(s) have OCR text but no embedding yet.",
|
||||
"similarity.find_pairs_btn": "Find Pairs",
|
||||
"similarity.heading": "Document Similarity",
|
||||
"similarity.load_error": "Failed to load pairs.",
|
||||
"similarity.min_similarity_label": "Min. similarity",
|
||||
"similarity.no_pairs_detail": "No document pairs exceed the similarity threshold.",
|
||||
"similarity.no_pairs_heading": "No similar pairs found",
|
||||
"similarity.page_title": "Document Similarity - DocuElevate",
|
||||
"similarity.pagination_aria": "Similarity pairs pagination",
|
||||
"similarity.per_page_label": "Per page",
|
||||
"similarity.scanning": "Scanning for similar document pairs…",
|
||||
"similarity.stat_embedding_model": "Embedding Model",
|
||||
"similarity.stat_missing_embedding": "Missing Embedding",
|
||||
"similarity.stat_total_files": "Total Files",
|
||||
"similarity.stat_with_embedding": "With Embedding",
|
||||
"similarity.subtitle": "Pairs of documents with high semantic similarity, ranked by score.",
|
||||
"similarity.trigger_aria": "Trigger embedding computation for all files missing embeddings",
|
||||
"similarity.trigger_now": "trigger it now",
|
||||
"status.app_version": "App Version",
|
||||
"status.build_date": "Build Date",
|
||||
"status.container_id": "Container ID",
|
||||
"status.git_commit": "Git Commit",
|
||||
"status.last_check": "Last Check",
|
||||
"status.page_title": "System Status",
|
||||
"status.setting_label": "Setting",
|
||||
"status.value_label": "Value",
|
||||
"upload.browse_button": "Browse Files",
|
||||
"upload.button_processing": "Processing...",
|
||||
"upload.camera_button": "Take Photo / Scan Document",
|
||||
"upload.download_button": "Download and Process",
|
||||
"upload.downloading": "Downloading file from URL...",
|
||||
"upload.drag_drop": "Drag & drop files here or click to browse",
|
||||
"upload.drop_hint_desktop": "Drag & drop files or folders here, or click to select files.",
|
||||
"upload.drop_hint_mobile": "Tap to select files or use the camera button below.",
|
||||
"upload.drop_zone_aria": "File upload area. Drag and drop files here, or press Enter to browse files.",
|
||||
"upload.error": "Upload failed",
|
||||
"upload.error_invalid_url": "Invalid URL format",
|
||||
"upload.error_url_required": "Please enter a URL",
|
||||
"upload.file_size_hint": "Maximum size: 500 MB per file",
|
||||
"upload.file_types": "Allowed types: PDF, Office documents (Word, Excel, PowerPoint, etc.), Images",
|
||||
"upload.filename_description": "Leave empty to use filename from URL",
|
||||
"upload.filename_label": "Filename (optional)",
|
||||
"upload.filename_placeholder": "my-document.pdf",
|
||||
"upload.max_size": "Maximum file size: {size}",
|
||||
"upload.page_title": "Upload Files",
|
||||
"upload.section_device": "Upload from Device",
|
||||
"upload.section_url": "Upload from URL",
|
||||
"upload.select_file": "Select File",
|
||||
"upload.success": "File uploaded successfully",
|
||||
"upload.title": "Upload Document",
|
||||
"upload.uploading": "Uploading...",
|
||||
"upload.url_description": "Enter a direct link to a file (PDF, Office documents, or images)",
|
||||
"upload.url_label": "File URL",
|
||||
"upload.url_placeholder": "https://example.com/document.pdf"
|
||||
}
|
||||
@@ -195,6 +195,7 @@
|
||||
"common.confirm": "确认",
|
||||
"common.copied": "已复制!",
|
||||
"common.copy": "复制",
|
||||
"common.create": "Create",
|
||||
"common.created": "创建时间",
|
||||
"common.date": "日期",
|
||||
"common.delete": "删除",
|
||||
@@ -202,6 +203,7 @@
|
||||
"common.details": "详情",
|
||||
"common.disabled": "已禁用",
|
||||
"common.download": "下载",
|
||||
"common.duplicate": "Duplicate",
|
||||
"common.edit": "编辑",
|
||||
"common.enabled": "已启用",
|
||||
"common.error": "错误",
|
||||
@@ -218,6 +220,7 @@
|
||||
"common.page": "Page",
|
||||
"common.pending": "待处理",
|
||||
"common.prev_page": "Previous page",
|
||||
"common.previous": "Previous",
|
||||
"common.processing": "处理中",
|
||||
"common.refresh": "刷新",
|
||||
"common.reset": "重置",
|
||||
@@ -228,7 +231,9 @@
|
||||
"common.select_placeholder": "— select —",
|
||||
"common.size": "大小",
|
||||
"common.status": "状态",
|
||||
"common.submit": "Submit",
|
||||
"common.success": "成功",
|
||||
"common.tags": "Tags",
|
||||
"common.type": "类型",
|
||||
"common.updated": "更新时间",
|
||||
"common.upload": "上传",
|
||||
@@ -236,6 +241,8 @@
|
||||
"common.warning": "警告",
|
||||
"common.yes": "是",
|
||||
"cookie.accept": "我知道了",
|
||||
"cookie.learn_more": "Learn more",
|
||||
"cookie.message": "This website uses cookies to improve your experience.",
|
||||
"cookie.notice": "DocuElevate 仅使用身份验证和服务运行所需的基本会话 Cookie。不使用任何跟踪或分析 Cookie。",
|
||||
"cookie.notice_label": "Cookie 通知",
|
||||
"cookie.policy_link": "Cookie 政策",
|
||||
@@ -398,6 +405,8 @@
|
||||
"files.upload_modal_close": "Close upload progress",
|
||||
"files.upload_modal_header": "Uploading Files",
|
||||
"files.uploaded": "已上传",
|
||||
"footer.about": "About",
|
||||
"footer.attribution": "Attribution",
|
||||
"footer.attributions": "致谢",
|
||||
"footer.cookies": "Cookie",
|
||||
"footer.copyright": "DocuElevate {year}",
|
||||
@@ -577,6 +586,7 @@
|
||||
"integrations.username_label": "Username",
|
||||
"language.bg": "Български",
|
||||
"language.ca": "Català",
|
||||
"language.change_success": "Language changed to {language}",
|
||||
"language.changed": "语言已更改为{language}",
|
||||
"language.cs": "Čeština",
|
||||
"language.da": "Dansk",
|
||||
@@ -602,6 +612,7 @@
|
||||
"language.ro": "Română",
|
||||
"language.ru": "Русский",
|
||||
"language.selector": "语言",
|
||||
"language.selector_label": "Select language",
|
||||
"language.sk": "Slovenčina",
|
||||
"language.sl": "Slovenščina",
|
||||
"language.sv": "Svenska",
|
||||
@@ -610,9 +621,15 @@
|
||||
"language.zh": "中文",
|
||||
"nav.about": "关于",
|
||||
"nav.admin": "管理",
|
||||
"nav.admin.audit_logs": "Audit Logs",
|
||||
"nav.admin.backups": "Backups",
|
||||
"nav.admin.plans": "Plans",
|
||||
"nav.admin.scheduled_jobs": "Scheduled Jobs",
|
||||
"nav.admin.users": "Users",
|
||||
"nav.admin_actions": "管理操作",
|
||||
"nav.admin_menu": "管理菜单",
|
||||
"nav.api_docs": "API 文档",
|
||||
"nav.api_tokens": "API Tokens",
|
||||
"nav.backup_restore": "备份与恢复",
|
||||
"nav.credentials": "凭据",
|
||||
"nav.dark_mode": "深色模式",
|
||||
@@ -623,25 +640,34 @@
|
||||
"nav.files": "文件",
|
||||
"nav.help": "帮助",
|
||||
"nav.help_center": "帮助中心",
|
||||
"nav.imap": "Email Import",
|
||||
"nav.integrations": "集成",
|
||||
"nav.light_mode": "浅色模式",
|
||||
"nav.login": "Log In",
|
||||
"nav.logout": "Log Out",
|
||||
"nav.main_navigation": "主导航",
|
||||
"nav.notifications": "通知",
|
||||
"nav.open_main_menu": "打开主菜单",
|
||||
"nav.pipelines": "处理流程",
|
||||
"nav.plan_designer": "方案设计",
|
||||
"nav.pricing": "价格",
|
||||
"nav.profile": "Profile",
|
||||
"nav.queue": "Queue",
|
||||
"nav.queue_monitor": "队列监控",
|
||||
"nav.scheduled_jobs": "计划任务",
|
||||
"nav.search": "搜索",
|
||||
"nav.settings": "设置",
|
||||
"nav.shared_links": "Shared Links",
|
||||
"nav.signup": "Sign Up",
|
||||
"nav.similarity": "相似度",
|
||||
"nav.skip_to_content": "跳至主要内容",
|
||||
"nav.status": "状态",
|
||||
"nav.subscription": "Subscription",
|
||||
"nav.toggle_dark_mode": "切换深色模式",
|
||||
"nav.toggle_nav": "切换导航菜单",
|
||||
"nav.upload": "上传",
|
||||
"nav.users": "用户",
|
||||
"nav.version": "Version Info",
|
||||
"notifications.filter_all": "All",
|
||||
"notifications.filter_read": "Read only",
|
||||
"notifications.filter_unread": "Unread only",
|
||||
|
||||
@@ -33,6 +33,7 @@ from app.models import ( # noqa: F401
|
||||
LocalUser,
|
||||
MobileDevice,
|
||||
Pipeline,
|
||||
PipelineRoutingRule,
|
||||
PipelineStep,
|
||||
ProcessingLog,
|
||||
SavedSearch,
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
"""Add pipeline_routing_rules table for conditional document routing.
|
||||
|
||||
Revision ID: 035_add_routing_rules
|
||||
Revises: 034_add_user_profile_settings
|
||||
Create Date: 2026-03-09
|
||||
"""
|
||||
|
||||
from typing import Union
|
||||
|
||||
import sqlalchemy as sa
|
||||
from alembic import op
|
||||
|
||||
revision: str = "035_add_routing_rules"
|
||||
down_revision: Union[str, None] = "034_add_user_profile_settings"
|
||||
depends_on: Union[str, None] = None
|
||||
|
||||
|
||||
def upgrade() -> None:
|
||||
"""Create pipeline_routing_rules table."""
|
||||
op.create_table(
|
||||
"pipeline_routing_rules",
|
||||
sa.Column("id", sa.Integer(), nullable=False),
|
||||
sa.Column("owner_id", sa.String(), nullable=True),
|
||||
sa.Column("name", sa.String(255), nullable=False),
|
||||
sa.Column("position", sa.Integer(), nullable=False, server_default="0"),
|
||||
sa.Column("field", sa.String(255), nullable=False),
|
||||
sa.Column("operator", sa.String(50), nullable=False),
|
||||
sa.Column("value", sa.String(1024), nullable=False),
|
||||
sa.Column("target_pipeline_id", sa.Integer(), nullable=False),
|
||||
sa.Column("is_active", sa.Boolean(), nullable=False, server_default="1"),
|
||||
sa.Column("created_at", sa.DateTime(timezone=True), server_default=sa.func.now()),
|
||||
sa.Column("updated_at", sa.DateTime(timezone=True), server_default=sa.func.now()),
|
||||
sa.PrimaryKeyConstraint("id"),
|
||||
sa.ForeignKeyConstraint(["target_pipeline_id"], ["pipelines.id"]),
|
||||
)
|
||||
op.create_index("ix_routing_rules_id", "pipeline_routing_rules", ["id"])
|
||||
op.create_index("ix_routing_rules_owner_id", "pipeline_routing_rules", ["owner_id"])
|
||||
op.create_index("ix_routing_rules_target_pipeline_id", "pipeline_routing_rules", ["target_pipeline_id"])
|
||||
|
||||
|
||||
def downgrade() -> None:
|
||||
"""Drop pipeline_routing_rules table."""
|
||||
op.drop_index("ix_routing_rules_target_pipeline_id", "pipeline_routing_rules")
|
||||
op.drop_index("ix_routing_rules_owner_id", "pipeline_routing_rules")
|
||||
op.drop_index("ix_routing_rules_id", "pipeline_routing_rules")
|
||||
op.drop_table("pipeline_routing_rules")
|
||||
@@ -66,6 +66,7 @@ from app.models import ( # noqa: F401, E402
|
||||
DocumentMetadata,
|
||||
FileRecord,
|
||||
Pipeline,
|
||||
PipelineRoutingRule,
|
||||
PipelineStep,
|
||||
ProcessingLog,
|
||||
SavedSearch,
|
||||
|
||||
@@ -0,0 +1,803 @@
|
||||
"""Tests for the routing rules API and routing engine.
|
||||
|
||||
Covers CRUD operations for routing rules, rule evaluation (dry-run and engine),
|
||||
operator logic, access control, and edge cases.
|
||||
"""
|
||||
|
||||
import json
|
||||
|
||||
import pytest
|
||||
|
||||
from app.models import FileRecord, Pipeline, PipelineRoutingRule
|
||||
from app.utils.routing_engine import (
|
||||
BUILTIN_FIELDS,
|
||||
VALID_OPERATORS,
|
||||
_evaluate_condition,
|
||||
_resolve_field,
|
||||
_to_float,
|
||||
build_document_properties,
|
||||
evaluate_routing_rules,
|
||||
)
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Helpers
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
|
||||
def _make_pipeline(db_session, name="Test Pipeline", owner_id="testuser", is_active=True):
|
||||
"""Insert a minimal Pipeline and return it."""
|
||||
p = Pipeline(owner_id=owner_id, name=name, is_default=False, is_active=is_active)
|
||||
db_session.add(p)
|
||||
db_session.commit()
|
||||
db_session.refresh(p)
|
||||
return p
|
||||
|
||||
|
||||
def _make_rule(db_session, target_pipeline_id, **kwargs):
|
||||
"""Insert a PipelineRoutingRule and return it."""
|
||||
defaults = {
|
||||
"owner_id": "testuser",
|
||||
"name": "Test Rule",
|
||||
"position": 0,
|
||||
"field": "file_type",
|
||||
"operator": "equals",
|
||||
"value": "application/pdf",
|
||||
"is_active": True,
|
||||
}
|
||||
defaults.update(kwargs)
|
||||
defaults["target_pipeline_id"] = target_pipeline_id
|
||||
rule = PipelineRoutingRule(**defaults)
|
||||
db_session.add(rule)
|
||||
db_session.commit()
|
||||
db_session.refresh(rule)
|
||||
return rule
|
||||
|
||||
|
||||
def _make_file_record(db_session, **kwargs):
|
||||
"""Insert a minimal FileRecord and return it."""
|
||||
defaults = {
|
||||
"owner_id": "testuser",
|
||||
"filehash": "abc123",
|
||||
"original_filename": "test.pdf",
|
||||
"local_filename": "/tmp/test.pdf",
|
||||
"file_size": 1024,
|
||||
"mime_type": "application/pdf",
|
||||
}
|
||||
defaults.update(kwargs)
|
||||
fr = FileRecord(**defaults)
|
||||
db_session.add(fr)
|
||||
db_session.commit()
|
||||
db_session.refresh(fr)
|
||||
return fr
|
||||
|
||||
|
||||
# ===========================================================================
|
||||
# Unit tests – routing engine
|
||||
# ===========================================================================
|
||||
|
||||
|
||||
@pytest.mark.unit
|
||||
class TestResolveField:
|
||||
"""Tests for _resolve_field()."""
|
||||
|
||||
def test_builtin_field(self):
|
||||
"""Built-in fields are resolved directly from the dict."""
|
||||
props = {"file_type": "application/pdf", "size": 1024}
|
||||
assert _resolve_field("file_type", props) == "application/pdf"
|
||||
assert _resolve_field("size", props) == 1024
|
||||
|
||||
def test_category_alias(self):
|
||||
"""'category' is an alias for 'document_type'."""
|
||||
props = {"document_type": "Invoice"}
|
||||
assert _resolve_field("category", props) == "Invoice"
|
||||
|
||||
def test_metadata_field(self):
|
||||
"""'metadata.<key>' resolves from the nested metadata dict."""
|
||||
props = {"metadata": {"sender": "Acme Corp", "amount": 100.50}}
|
||||
assert _resolve_field("metadata.sender", props) == "Acme Corp"
|
||||
assert _resolve_field("metadata.amount", props) == 100.50
|
||||
|
||||
def test_missing_metadata_key(self):
|
||||
"""Missing metadata key returns None."""
|
||||
props = {"metadata": {"sender": "Acme"}}
|
||||
assert _resolve_field("metadata.missing_key", props) is None
|
||||
|
||||
def test_missing_metadata_dict(self):
|
||||
"""Missing metadata dict returns None."""
|
||||
props = {}
|
||||
assert _resolve_field("metadata.sender", props) is None
|
||||
|
||||
def test_missing_builtin_field(self):
|
||||
"""Missing built-in field returns None."""
|
||||
props = {}
|
||||
assert _resolve_field("file_type", props) is None
|
||||
|
||||
|
||||
@pytest.mark.unit
|
||||
class TestToFloat:
|
||||
"""Tests for _to_float()."""
|
||||
|
||||
def test_int_value(self):
|
||||
assert _to_float(42) == 42.0
|
||||
|
||||
def test_float_value(self):
|
||||
assert _to_float(3.14) == 3.14
|
||||
|
||||
def test_string_number(self):
|
||||
assert _to_float("100") == 100.0
|
||||
|
||||
def test_none_returns_none(self):
|
||||
assert _to_float(None) is None
|
||||
|
||||
def test_non_numeric_string_returns_none(self):
|
||||
assert _to_float("not-a-number") is None
|
||||
|
||||
|
||||
@pytest.mark.unit
|
||||
class TestEvaluateCondition:
|
||||
"""Tests for _evaluate_condition()."""
|
||||
|
||||
def test_equals_match(self):
|
||||
assert _evaluate_condition("application/pdf", "equals", "application/pdf") is True
|
||||
|
||||
def test_equals_case_insensitive(self):
|
||||
assert _evaluate_condition("Application/PDF", "equals", "application/pdf") is True
|
||||
|
||||
def test_equals_no_match(self):
|
||||
assert _evaluate_condition("image/png", "equals", "application/pdf") is False
|
||||
|
||||
def test_not_equals_match(self):
|
||||
assert _evaluate_condition("image/png", "not_equals", "application/pdf") is True
|
||||
|
||||
def test_not_equals_no_match(self):
|
||||
assert _evaluate_condition("application/pdf", "not_equals", "application/pdf") is False
|
||||
|
||||
def test_contains_match(self):
|
||||
assert _evaluate_condition("invoice_2024.pdf", "contains", "invoice") is True
|
||||
|
||||
def test_contains_case_insensitive(self):
|
||||
assert _evaluate_condition("INVOICE_2024.PDF", "contains", "invoice") is True
|
||||
|
||||
def test_contains_no_match(self):
|
||||
assert _evaluate_condition("receipt.pdf", "contains", "invoice") is False
|
||||
|
||||
def test_not_contains_match(self):
|
||||
assert _evaluate_condition("receipt.pdf", "not_contains", "invoice") is True
|
||||
|
||||
def test_not_contains_no_match(self):
|
||||
assert _evaluate_condition("invoice_2024.pdf", "not_contains", "invoice") is False
|
||||
|
||||
def test_regex_match(self):
|
||||
assert _evaluate_condition("invoice_2024.pdf", "regex", r"invoice_\d+\.pdf") is True
|
||||
|
||||
def test_regex_no_match(self):
|
||||
assert _evaluate_condition("receipt.pdf", "regex", r"invoice_\d+\.pdf") is False
|
||||
|
||||
def test_regex_case_insensitive(self):
|
||||
assert _evaluate_condition("INVOICE_2024.PDF", "regex", r"invoice_\d+\.pdf") is True
|
||||
|
||||
def test_regex_invalid_pattern(self):
|
||||
"""Invalid regex should return False, not raise."""
|
||||
assert _evaluate_condition("test", "regex", r"[invalid") is False
|
||||
|
||||
def test_gt(self):
|
||||
assert _evaluate_condition(2048, "gt", "1024") is True
|
||||
assert _evaluate_condition(1024, "gt", "1024") is False
|
||||
|
||||
def test_lt(self):
|
||||
assert _evaluate_condition(512, "lt", "1024") is True
|
||||
assert _evaluate_condition(1024, "lt", "1024") is False
|
||||
|
||||
def test_gte(self):
|
||||
assert _evaluate_condition(1024, "gte", "1024") is True
|
||||
assert _evaluate_condition(2048, "gte", "1024") is True
|
||||
assert _evaluate_condition(512, "gte", "1024") is False
|
||||
|
||||
def test_lte(self):
|
||||
assert _evaluate_condition(1024, "lte", "1024") is True
|
||||
assert _evaluate_condition(512, "lte", "1024") is True
|
||||
assert _evaluate_condition(2048, "lte", "1024") is False
|
||||
|
||||
def test_none_actual_returns_false(self):
|
||||
"""When the actual value is None, most operators return False."""
|
||||
assert _evaluate_condition(None, "equals", "test") is False
|
||||
assert _evaluate_condition(None, "contains", "test") is False
|
||||
assert _evaluate_condition(None, "regex", "test") is False
|
||||
assert _evaluate_condition(None, "gt", "10") is False
|
||||
|
||||
def test_none_actual_not_equals_returns_true(self):
|
||||
"""not_equals should return True when actual is None."""
|
||||
assert _evaluate_condition(None, "not_equals", "test") is True
|
||||
|
||||
def test_none_actual_not_contains_returns_true(self):
|
||||
"""not_contains should return True when actual is None."""
|
||||
assert _evaluate_condition(None, "not_contains", "test") is True
|
||||
|
||||
def test_non_numeric_gt_returns_false(self):
|
||||
"""Non-numeric values should return False for numeric operators."""
|
||||
assert _evaluate_condition("abc", "gt", "100") is False
|
||||
|
||||
def test_unknown_operator_returns_false(self):
|
||||
"""Unknown operator should return False."""
|
||||
assert _evaluate_condition("test", "unknown_op", "test") is False
|
||||
|
||||
|
||||
@pytest.mark.unit
|
||||
class TestBuildDocumentProperties:
|
||||
"""Tests for build_document_properties()."""
|
||||
|
||||
def test_basic_properties(self):
|
||||
"""Properties are extracted from FileRecord attributes."""
|
||||
fr = _MockFileRecord(
|
||||
mime_type="application/pdf",
|
||||
original_filename="test.pdf",
|
||||
file_size=2048,
|
||||
ai_metadata=json.dumps({"document_type": "Invoice", "sender": "Acme"}),
|
||||
)
|
||||
props = build_document_properties(fr)
|
||||
assert props["file_type"] == "application/pdf"
|
||||
assert props["filename"] == "test.pdf"
|
||||
assert props["size"] == 2048
|
||||
assert props["document_type"] == "Invoice"
|
||||
assert props["metadata"]["sender"] == "Acme"
|
||||
|
||||
def test_no_metadata(self):
|
||||
"""When ai_metadata is None, metadata is an empty dict."""
|
||||
fr = _MockFileRecord(mime_type="image/png", original_filename="img.png", file_size=512, ai_metadata=None)
|
||||
props = build_document_properties(fr)
|
||||
assert props["metadata"] == {}
|
||||
assert props["document_type"] is None
|
||||
|
||||
def test_invalid_metadata_json(self):
|
||||
"""Invalid JSON in ai_metadata should result in empty metadata."""
|
||||
fr = _MockFileRecord(
|
||||
mime_type="application/pdf",
|
||||
original_filename="test.pdf",
|
||||
file_size=1024,
|
||||
ai_metadata="not-json",
|
||||
)
|
||||
props = build_document_properties(fr)
|
||||
assert props["metadata"] == {}
|
||||
|
||||
|
||||
class _MockFileRecord:
|
||||
"""Lightweight stand-in for FileRecord in unit tests."""
|
||||
|
||||
def __init__(self, **kwargs):
|
||||
for k, v in kwargs.items():
|
||||
setattr(self, k, v)
|
||||
|
||||
|
||||
# ===========================================================================
|
||||
# Unit tests – evaluate_routing_rules (DB-backed)
|
||||
# ===========================================================================
|
||||
|
||||
|
||||
@pytest.mark.unit
|
||||
class TestEvaluateRoutingRules:
|
||||
"""Tests for evaluate_routing_rules() with a real DB session."""
|
||||
|
||||
def test_first_match_wins(self, db_session):
|
||||
"""The first matching rule (by position) is used."""
|
||||
p1 = _make_pipeline(db_session, name="Pipeline A")
|
||||
p2 = _make_pipeline(db_session, name="Pipeline B")
|
||||
|
||||
_make_rule(db_session, p1.id, position=0, field="file_type", operator="equals", value="application/pdf")
|
||||
_make_rule(db_session, p2.id, position=1, field="file_type", operator="equals", value="application/pdf")
|
||||
|
||||
doc = {"file_type": "application/pdf", "metadata": {}}
|
||||
result = evaluate_routing_rules(db_session, "testuser", doc)
|
||||
assert result is not None
|
||||
assert result.id == p1.id
|
||||
|
||||
def test_no_match_returns_none(self, db_session):
|
||||
"""When no rule matches, None is returned (caller uses default)."""
|
||||
p = _make_pipeline(db_session, name="Pipeline A")
|
||||
_make_rule(db_session, p.id, field="file_type", operator="equals", value="image/png")
|
||||
|
||||
doc = {"file_type": "application/pdf", "metadata": {}}
|
||||
result = evaluate_routing_rules(db_session, "testuser", doc)
|
||||
assert result is None
|
||||
|
||||
def test_inactive_rule_skipped(self, db_session):
|
||||
"""Inactive rules are not evaluated."""
|
||||
p = _make_pipeline(db_session, name="Pipeline A")
|
||||
_make_rule(db_session, p.id, is_active=False)
|
||||
|
||||
doc = {"file_type": "application/pdf", "metadata": {}}
|
||||
result = evaluate_routing_rules(db_session, "testuser", doc)
|
||||
assert result is None
|
||||
|
||||
def test_inactive_pipeline_skipped(self, db_session):
|
||||
"""Matching rule with inactive target pipeline is skipped."""
|
||||
p = _make_pipeline(db_session, name="Inactive Pipeline", is_active=False)
|
||||
_make_rule(db_session, p.id)
|
||||
|
||||
doc = {"file_type": "application/pdf", "metadata": {}}
|
||||
result = evaluate_routing_rules(db_session, "testuser", doc)
|
||||
assert result is None
|
||||
|
||||
def test_system_rules_evaluated_after_user_rules(self, db_session):
|
||||
"""System rules (owner_id=NULL) are evaluated after user-specific rules."""
|
||||
p_user = _make_pipeline(db_session, name="User Pipeline")
|
||||
p_system = _make_pipeline(db_session, name="System Pipeline", owner_id=None)
|
||||
|
||||
# System rule at position 0, user rule at position 1 — user should still win.
|
||||
_make_rule(
|
||||
db_session,
|
||||
p_system.id,
|
||||
owner_id=None,
|
||||
position=0,
|
||||
field="file_type",
|
||||
operator="equals",
|
||||
value="application/pdf",
|
||||
name="System Rule",
|
||||
)
|
||||
_make_rule(
|
||||
db_session,
|
||||
p_user.id,
|
||||
owner_id="testuser",
|
||||
position=1,
|
||||
field="file_type",
|
||||
operator="equals",
|
||||
value="application/pdf",
|
||||
name="User Rule",
|
||||
)
|
||||
|
||||
doc = {"file_type": "application/pdf", "metadata": {}}
|
||||
result = evaluate_routing_rules(db_session, "testuser", doc)
|
||||
assert result is not None
|
||||
assert result.id == p_user.id
|
||||
|
||||
def test_metadata_field_routing(self, db_session):
|
||||
"""Rules can match on metadata.* fields."""
|
||||
p = _make_pipeline(db_session, name="Invoice Pipeline")
|
||||
_make_rule(
|
||||
db_session,
|
||||
p.id,
|
||||
field="metadata.sender",
|
||||
operator="contains",
|
||||
value="acme",
|
||||
)
|
||||
|
||||
doc = {"file_type": "application/pdf", "metadata": {"sender": "Acme Corporation"}}
|
||||
result = evaluate_routing_rules(db_session, "testuser", doc)
|
||||
assert result is not None
|
||||
assert result.id == p.id
|
||||
|
||||
def test_size_routing(self, db_session):
|
||||
"""Rules can match on file size with numeric comparison."""
|
||||
p = _make_pipeline(db_session, name="Large File Pipeline")
|
||||
_make_rule(
|
||||
db_session,
|
||||
p.id,
|
||||
field="size",
|
||||
operator="gt",
|
||||
value="1048576",
|
||||
)
|
||||
|
||||
# 2 MB file
|
||||
doc = {"size": 2097152, "metadata": {}}
|
||||
result = evaluate_routing_rules(db_session, "testuser", doc)
|
||||
assert result is not None
|
||||
assert result.id == p.id
|
||||
|
||||
def test_regex_routing(self, db_session):
|
||||
"""Rules can match using regex on filename."""
|
||||
p = _make_pipeline(db_session, name="Invoice Pipeline")
|
||||
_make_rule(
|
||||
db_session,
|
||||
p.id,
|
||||
field="filename",
|
||||
operator="regex",
|
||||
value=r"invoice_\d{4}.*",
|
||||
)
|
||||
|
||||
doc = {"filename": "invoice_2024_q1.pdf", "metadata": {}}
|
||||
result = evaluate_routing_rules(db_session, "testuser", doc)
|
||||
assert result is not None
|
||||
assert result.id == p.id
|
||||
|
||||
|
||||
# ===========================================================================
|
||||
# API tests – operators endpoint (public)
|
||||
# ===========================================================================
|
||||
|
||||
|
||||
@pytest.mark.unit
|
||||
class TestOperatorsEndpoint:
|
||||
"""Tests for the /api/routing-rules/operators catalogue endpoint."""
|
||||
|
||||
def test_operators_returns_lists(self, client):
|
||||
"""GET /api/routing-rules/operators returns operators and fields."""
|
||||
r = client.get("/api/routing-rules/operators")
|
||||
assert r.status_code == 200
|
||||
data = r.json()
|
||||
assert "operators" in data
|
||||
assert "builtin_fields" in data
|
||||
assert "metadata_prefix" in data
|
||||
assert set(data["operators"]) == VALID_OPERATORS
|
||||
assert set(data["builtin_fields"]) == BUILTIN_FIELDS
|
||||
|
||||
|
||||
# ===========================================================================
|
||||
# API tests – CRUD
|
||||
# ===========================================================================
|
||||
|
||||
|
||||
@pytest.mark.unit
|
||||
class TestRoutingRuleCRUD:
|
||||
"""Tests for the routing rules CRUD API endpoints."""
|
||||
|
||||
def test_create_rule(self, client, db_session):
|
||||
"""POST /api/routing-rules creates a new rule."""
|
||||
p = _make_pipeline(db_session, name="Target Pipeline")
|
||||
r = client.post(
|
||||
"/api/routing-rules",
|
||||
json={
|
||||
"name": "Route PDFs",
|
||||
"field": "file_type",
|
||||
"operator": "equals",
|
||||
"value": "application/pdf",
|
||||
"target_pipeline_id": p.id,
|
||||
},
|
||||
)
|
||||
assert r.status_code == 201
|
||||
data = r.json()
|
||||
assert data["name"] == "Route PDFs"
|
||||
assert data["field"] == "file_type"
|
||||
assert data["operator"] == "equals"
|
||||
assert data["target_pipeline_id"] == p.id
|
||||
assert data["is_active"] is True
|
||||
|
||||
def test_create_rule_invalid_field(self, client, db_session):
|
||||
"""POST with an invalid field returns 422."""
|
||||
p = _make_pipeline(db_session, name="Target")
|
||||
r = client.post(
|
||||
"/api/routing-rules",
|
||||
json={
|
||||
"name": "Bad field",
|
||||
"field": "invalid_field",
|
||||
"operator": "equals",
|
||||
"value": "test",
|
||||
"target_pipeline_id": p.id,
|
||||
},
|
||||
)
|
||||
assert r.status_code == 422
|
||||
|
||||
def test_create_rule_invalid_operator(self, client, db_session):
|
||||
"""POST with an invalid operator returns 422."""
|
||||
p = _make_pipeline(db_session, name="Target")
|
||||
r = client.post(
|
||||
"/api/routing-rules",
|
||||
json={
|
||||
"name": "Bad op",
|
||||
"field": "file_type",
|
||||
"operator": "invalid_op",
|
||||
"value": "test",
|
||||
"target_pipeline_id": p.id,
|
||||
},
|
||||
)
|
||||
assert r.status_code == 422
|
||||
|
||||
def test_create_rule_missing_pipeline(self, client):
|
||||
"""POST referencing a nonexistent pipeline returns 404."""
|
||||
r = client.post(
|
||||
"/api/routing-rules",
|
||||
json={
|
||||
"name": "No pipeline",
|
||||
"field": "file_type",
|
||||
"operator": "equals",
|
||||
"value": "application/pdf",
|
||||
"target_pipeline_id": 99999,
|
||||
},
|
||||
)
|
||||
assert r.status_code == 404
|
||||
|
||||
def test_list_rules(self, client, db_session):
|
||||
"""GET /api/routing-rules returns the user's rules."""
|
||||
p = _make_pipeline(db_session, name="Pipeline")
|
||||
_make_rule(db_session, p.id, name="Rule 1", position=0, owner_id="anonymous")
|
||||
_make_rule(db_session, p.id, name="Rule 2", position=1, owner_id="anonymous")
|
||||
|
||||
r = client.get("/api/routing-rules")
|
||||
assert r.status_code == 200
|
||||
data = r.json()
|
||||
assert len(data) >= 2
|
||||
names = [d["name"] for d in data]
|
||||
assert "Rule 1" in names
|
||||
assert "Rule 2" in names
|
||||
|
||||
def test_get_rule(self, client, db_session):
|
||||
"""GET /api/routing-rules/{id} returns a specific rule."""
|
||||
p = _make_pipeline(db_session, name="Pipeline")
|
||||
rule = _make_rule(db_session, p.id, name="My Rule", owner_id="anonymous")
|
||||
|
||||
r = client.get(f"/api/routing-rules/{rule.id}")
|
||||
assert r.status_code == 200
|
||||
assert r.json()["name"] == "My Rule"
|
||||
|
||||
def test_get_rule_not_found(self, client):
|
||||
"""GET /api/routing-rules/{id} returns 404 for nonexistent rule."""
|
||||
r = client.get("/api/routing-rules/99999")
|
||||
assert r.status_code == 404
|
||||
|
||||
def test_update_rule(self, client, db_session):
|
||||
"""PUT /api/routing-rules/{id} updates a rule."""
|
||||
p = _make_pipeline(db_session, name="Pipeline")
|
||||
rule = _make_rule(db_session, p.id, name="Old Name", owner_id="anonymous")
|
||||
|
||||
r = client.put(
|
||||
f"/api/routing-rules/{rule.id}",
|
||||
json={"name": "New Name", "operator": "contains"},
|
||||
)
|
||||
assert r.status_code == 200
|
||||
data = r.json()
|
||||
assert data["name"] == "New Name"
|
||||
assert data["operator"] == "contains"
|
||||
|
||||
def test_update_rule_invalid_field(self, client, db_session):
|
||||
"""PUT with invalid field returns 422."""
|
||||
p = _make_pipeline(db_session, name="Pipeline")
|
||||
rule = _make_rule(db_session, p.id, owner_id="anonymous")
|
||||
|
||||
r = client.put(f"/api/routing-rules/{rule.id}", json={"field": "bad_field"})
|
||||
assert r.status_code == 422
|
||||
|
||||
def test_update_rule_invalid_operator(self, client, db_session):
|
||||
"""PUT with invalid operator returns 422."""
|
||||
p = _make_pipeline(db_session, name="Pipeline")
|
||||
rule = _make_rule(db_session, p.id, owner_id="anonymous")
|
||||
|
||||
r = client.put(f"/api/routing-rules/{rule.id}", json={"operator": "bad_op"})
|
||||
assert r.status_code == 422
|
||||
|
||||
def test_update_rule_missing_pipeline(self, client, db_session):
|
||||
"""PUT with nonexistent target pipeline returns 404."""
|
||||
p = _make_pipeline(db_session, name="Pipeline")
|
||||
rule = _make_rule(db_session, p.id, owner_id="anonymous")
|
||||
|
||||
r = client.put(f"/api/routing-rules/{rule.id}", json={"target_pipeline_id": 99999})
|
||||
assert r.status_code == 404
|
||||
|
||||
def test_delete_rule(self, client, db_session):
|
||||
"""DELETE /api/routing-rules/{id} removes a rule."""
|
||||
p = _make_pipeline(db_session, name="Pipeline")
|
||||
rule = _make_rule(db_session, p.id, owner_id="anonymous")
|
||||
|
||||
r = client.delete(f"/api/routing-rules/{rule.id}")
|
||||
assert r.status_code == 204
|
||||
|
||||
# Verify it's gone
|
||||
r = client.get(f"/api/routing-rules/{rule.id}")
|
||||
assert r.status_code == 404
|
||||
|
||||
def test_delete_rule_not_found(self, client):
|
||||
"""DELETE for nonexistent rule returns 404."""
|
||||
r = client.delete("/api/routing-rules/99999")
|
||||
assert r.status_code == 404
|
||||
|
||||
|
||||
# ===========================================================================
|
||||
# API tests – reorder
|
||||
# ===========================================================================
|
||||
|
||||
|
||||
@pytest.mark.unit
|
||||
class TestReorderRoutingRules:
|
||||
"""Tests for the PUT /api/routing-rules/reorder endpoint."""
|
||||
|
||||
def test_reorder_rules(self, client, db_session):
|
||||
"""Reordering updates the position of rules."""
|
||||
p = _make_pipeline(db_session, name="Pipeline")
|
||||
r1 = _make_rule(db_session, p.id, name="A", position=0, owner_id="anonymous")
|
||||
r2 = _make_rule(db_session, p.id, name="B", position=1, owner_id="anonymous")
|
||||
|
||||
r = client.put(
|
||||
"/api/routing-rules/reorder",
|
||||
json={"rule_ids": [r2.id, r1.id]},
|
||||
)
|
||||
assert r.status_code == 200
|
||||
data = r.json()
|
||||
assert data[0]["id"] == r2.id
|
||||
assert data[0]["position"] == 0
|
||||
assert data[1]["id"] == r1.id
|
||||
assert data[1]["position"] == 1
|
||||
|
||||
def test_reorder_invalid_ids(self, client, db_session):
|
||||
"""Reorder with invalid IDs returns 422."""
|
||||
r = client.put(
|
||||
"/api/routing-rules/reorder",
|
||||
json={"rule_ids": [99999]},
|
||||
)
|
||||
assert r.status_code == 422
|
||||
|
||||
|
||||
# ===========================================================================
|
||||
# API tests – evaluate (dry-run)
|
||||
# ===========================================================================
|
||||
|
||||
|
||||
@pytest.mark.unit
|
||||
class TestEvaluateEndpoint:
|
||||
"""Tests for the POST /api/routing-rules/evaluate dry-run endpoint."""
|
||||
|
||||
def test_evaluate_match(self, client, db_session):
|
||||
"""Evaluate returns the matching rule and target pipeline."""
|
||||
p = _make_pipeline(db_session, name="Invoice Pipeline")
|
||||
_make_rule(
|
||||
db_session,
|
||||
p.id,
|
||||
name="PDF Route",
|
||||
field="file_type",
|
||||
operator="equals",
|
||||
value="application/pdf",
|
||||
owner_id="anonymous",
|
||||
)
|
||||
|
||||
r = client.post(
|
||||
"/api/routing-rules/evaluate",
|
||||
json={"file_type": "application/pdf"},
|
||||
)
|
||||
assert r.status_code == 200
|
||||
data = r.json()
|
||||
assert data["matched"] is True
|
||||
assert data["rule"]["name"] == "PDF Route"
|
||||
assert data["target_pipeline"]["id"] == p.id
|
||||
|
||||
def test_evaluate_no_match(self, client, db_session):
|
||||
"""Evaluate returns matched=False when no rule applies."""
|
||||
p = _make_pipeline(db_session, name="Pipeline")
|
||||
_make_rule(
|
||||
db_session,
|
||||
p.id,
|
||||
name="PNG Route",
|
||||
field="file_type",
|
||||
operator="equals",
|
||||
value="image/png",
|
||||
owner_id="anonymous",
|
||||
)
|
||||
|
||||
r = client.post(
|
||||
"/api/routing-rules/evaluate",
|
||||
json={"file_type": "application/pdf"},
|
||||
)
|
||||
assert r.status_code == 200
|
||||
data = r.json()
|
||||
assert data["matched"] is False
|
||||
assert data["rule"] is None
|
||||
|
||||
def test_evaluate_with_metadata(self, client, db_session):
|
||||
"""Evaluate with metadata.* fields works."""
|
||||
p = _make_pipeline(db_session, name="Invoice Pipeline")
|
||||
_make_rule(
|
||||
db_session,
|
||||
p.id,
|
||||
name="Invoice Route",
|
||||
field="metadata.sender",
|
||||
operator="contains",
|
||||
value="acme",
|
||||
owner_id="anonymous",
|
||||
)
|
||||
|
||||
r = client.post(
|
||||
"/api/routing-rules/evaluate",
|
||||
json={"metadata": {"sender": "Acme Corporation"}},
|
||||
)
|
||||
assert r.status_code == 200
|
||||
data = r.json()
|
||||
assert data["matched"] is True
|
||||
|
||||
def test_evaluate_with_size(self, client, db_session):
|
||||
"""Evaluate with size comparisons works."""
|
||||
p = _make_pipeline(db_session, name="Large Pipeline")
|
||||
_make_rule(
|
||||
db_session,
|
||||
p.id,
|
||||
name="Large Files",
|
||||
field="size",
|
||||
operator="gt",
|
||||
value="1000000",
|
||||
owner_id="anonymous",
|
||||
)
|
||||
|
||||
r = client.post(
|
||||
"/api/routing-rules/evaluate",
|
||||
json={"size": 2000000},
|
||||
)
|
||||
assert r.status_code == 200
|
||||
assert r.json()["matched"] is True
|
||||
|
||||
|
||||
# ===========================================================================
|
||||
# API tests – metadata field validation
|
||||
# ===========================================================================
|
||||
|
||||
|
||||
@pytest.mark.unit
|
||||
class TestFieldValidation:
|
||||
"""Tests for field validation in routing rule creation."""
|
||||
|
||||
def test_metadata_prefix_accepted(self, client, db_session):
|
||||
"""Fields with 'metadata.' prefix are valid."""
|
||||
p = _make_pipeline(db_session, name="Pipeline")
|
||||
r = client.post(
|
||||
"/api/routing-rules",
|
||||
json={
|
||||
"name": "Metadata Rule",
|
||||
"field": "metadata.sender",
|
||||
"operator": "equals",
|
||||
"value": "test",
|
||||
"target_pipeline_id": p.id,
|
||||
},
|
||||
)
|
||||
assert r.status_code == 201
|
||||
|
||||
def test_bare_metadata_rejected(self, client, db_session):
|
||||
"""Just 'metadata.' without a key suffix is invalid."""
|
||||
p = _make_pipeline(db_session, name="Pipeline")
|
||||
r = client.post(
|
||||
"/api/routing-rules",
|
||||
json={
|
||||
"name": "Bad Metadata",
|
||||
"field": "metadata.",
|
||||
"operator": "equals",
|
||||
"value": "test",
|
||||
"target_pipeline_id": p.id,
|
||||
},
|
||||
)
|
||||
assert r.status_code == 422
|
||||
|
||||
@pytest.mark.parametrize("field", sorted(BUILTIN_FIELDS))
|
||||
def test_builtin_fields_accepted(self, client, db_session, field):
|
||||
"""All built-in fields are accepted."""
|
||||
p = _make_pipeline(db_session, name=f"Pipeline for {field}")
|
||||
r = client.post(
|
||||
"/api/routing-rules",
|
||||
json={
|
||||
"name": f"Rule for {field}",
|
||||
"field": field,
|
||||
"operator": "equals",
|
||||
"value": "test",
|
||||
"target_pipeline_id": p.id,
|
||||
},
|
||||
)
|
||||
assert r.status_code == 201
|
||||
|
||||
|
||||
# ===========================================================================
|
||||
# API tests – auto-position
|
||||
# ===========================================================================
|
||||
|
||||
|
||||
@pytest.mark.unit
|
||||
class TestAutoPosition:
|
||||
"""Tests for automatic position assignment."""
|
||||
|
||||
def test_auto_position_increments(self, client, db_session):
|
||||
"""Rules created without position get incrementing positions."""
|
||||
p = _make_pipeline(db_session, name="Pipeline")
|
||||
|
||||
r1 = client.post(
|
||||
"/api/routing-rules",
|
||||
json={
|
||||
"name": "First",
|
||||
"field": "file_type",
|
||||
"operator": "equals",
|
||||
"value": "application/pdf",
|
||||
"target_pipeline_id": p.id,
|
||||
},
|
||||
)
|
||||
r2 = client.post(
|
||||
"/api/routing-rules",
|
||||
json={
|
||||
"name": "Second",
|
||||
"field": "file_type",
|
||||
"operator": "equals",
|
||||
"value": "image/png",
|
||||
"target_pipeline_id": p.id,
|
||||
},
|
||||
)
|
||||
assert r1.status_code == 201
|
||||
assert r2.status_code == 201
|
||||
assert r2.json()["position"] > r1.json()["position"]
|
||||
Reference in New Issue
Block a user