Compare commits
174 Commits
drift-map-
...
v1.139.1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
89533a858f | ||
|
|
dc5a0f8c33 | ||
|
|
c443ab854c | ||
|
|
379c73818a | ||
|
|
73bb05c5f9 | ||
|
|
b69470c69e | ||
|
|
34255453b1 | ||
|
|
4e03b06ff7 | ||
|
|
9bb211f56f | ||
|
|
6f4f79d8cc | ||
|
|
ed3997d844 | ||
|
|
fb59fa343d | ||
|
|
ab2849781a | ||
|
|
66c657ca8a | ||
|
|
c245208106 | ||
|
|
99d6673503 | ||
|
|
9ff37b6870 | ||
|
|
0e7816130b | ||
|
|
a1beb0a87d | ||
|
|
c4ac2e345f | ||
|
|
f422b341d1 | ||
|
|
90538d2535 | ||
|
|
abc7bfa0ba | ||
|
|
60a809d7b4 | ||
|
|
cda7249a6a | ||
|
|
47566c1a4a | ||
|
|
f08002d48f | ||
|
|
7186914531 | ||
|
|
d38ab93484 | ||
|
|
845b0f2073 | ||
|
|
acb1e513a7 | ||
|
|
4d4e54967d | ||
|
|
e2dcebfe6c | ||
|
|
d4f2b43f64 | ||
|
|
f343b0e58f | ||
|
|
a8b4a5e856 | ||
|
|
e7e030279b | ||
|
|
9ff664ed36 | ||
|
|
e00556a34a | ||
|
|
a313e4338e | ||
|
|
257b0c74af | ||
|
|
3d515f5072 | ||
|
|
ec01db5c8b | ||
|
|
cd6d8fcdfe | ||
|
|
1198311d64 | ||
|
|
1a4eab9655 | ||
|
|
1926c90780 | ||
|
|
4d5975b717 | ||
|
|
8cbd6b29c4 | ||
|
|
8c1b630a2b | ||
|
|
c961d2aaf7 | ||
|
|
41c75dc93e | ||
|
|
f92247c99b | ||
|
|
53f9fc2d1c | ||
|
|
bede19a3ca | ||
|
|
aefa62b234 | ||
|
|
b3fb831994 | ||
|
|
0d60199514 | ||
|
|
54960157c0 | ||
|
|
244d097d01 | ||
|
|
adb55f3726 | ||
|
|
5d2777a5c6 | ||
|
|
24db881c14 | ||
|
|
f09bed9ad2 | ||
|
|
e29cc66361 | ||
|
|
669b765662 | ||
|
|
e7060dc292 | ||
|
|
03a8b6cb38 | ||
|
|
f317cbe221 | ||
|
|
d6d31c6695 | ||
|
|
4b9019e762 | ||
|
|
13563fc507 | ||
|
|
2ce4f8dd3b | ||
|
|
538d5c81ea | ||
|
|
9ecaa3fa9d | ||
|
|
b1aacfdbd9 | ||
|
|
cfbc24579d | ||
|
|
1d4d8e7a9a | ||
|
|
7b83b7b2d5 | ||
|
|
a896c5a4dd | ||
|
|
c74989d304 | ||
|
|
1283491cc2 | ||
|
|
89522daaac | ||
|
|
011a667314 | ||
|
|
df2525ee08 | ||
|
|
01a9f735c8 | ||
|
|
af10c3bc2f | ||
|
|
395f2e155d | ||
|
|
10cbed55c4 | ||
|
|
325d5f7ba9 | ||
|
|
746252fe39 | ||
|
|
f36efd128b | ||
|
|
f1c494ef97 | ||
|
|
9c8c52874a | ||
|
|
68b617130a | ||
|
|
89292fecb4 | ||
|
|
1193a23282 | ||
|
|
bbfff64927 | ||
|
|
c5c9a522c1 | ||
|
|
3cd7f5ab90 | ||
|
|
f2067221c5 | ||
|
|
89598cf0be | ||
|
|
0121043d7d | ||
|
|
1ca46fbd98 | ||
|
|
6ddef3a7e4 | ||
|
|
0d9ebdc46a | ||
|
|
fa26d0de33 | ||
|
|
a5760129f0 | ||
|
|
d430b869ac | ||
|
|
4179c8a17d | ||
|
|
0a9cbf01d2 | ||
|
|
9567a2a560 | ||
|
|
58dd6f094c | ||
|
|
02381343ff | ||
|
|
09a5963eee | ||
|
|
a573a23c83 | ||
|
|
7118dca559 | ||
|
|
13d43e193e | ||
|
|
7a7843467c | ||
|
|
9e6fee4064 | ||
|
|
9680f1290d | ||
|
|
ce2ea98926 | ||
|
|
5c76cc34e1 | ||
|
|
eb2f4c866e | ||
|
|
2a370087e8 | ||
|
|
272c8a5812 | ||
|
|
08fe549ed8 | ||
|
|
ae15efdf2a | ||
|
|
8e003f95db | ||
|
|
3e92e837f1 | ||
|
|
081307ced2 | ||
|
|
a91bb399f0 | ||
|
|
42b78c59b5 | ||
|
|
750d21aeba | ||
|
|
990d9ba9a8 | ||
|
|
4d0c9172e5 | ||
|
|
094e3a2757 | ||
|
|
278668b8c5 | ||
|
|
10141504a2 | ||
|
|
67736c8fce | ||
|
|
b56a272f64 | ||
|
|
5901c2e963 | ||
|
|
be85832b20 | ||
|
|
c8f9a72d3e | ||
|
|
3d633a81c4 | ||
|
|
4efbf36d82 | ||
|
|
e2c3c39597 | ||
|
|
007ba1d9ef | ||
|
|
4d5cd1a6b5 | ||
|
|
8108f50c4e | ||
|
|
1b8354ed36 | ||
|
|
9242afb4b0 | ||
|
|
c5f14adff0 | ||
|
|
1378f22368 | ||
|
|
4bd465e752 | ||
|
|
a07531be3b | ||
|
|
3cdc6844a1 | ||
|
|
c3263e50fc | ||
|
|
7391ea6ff9 | ||
|
|
f972b8d514 | ||
|
|
6b50d958f4 | ||
|
|
27c456eb75 | ||
|
|
e7d051db3c | ||
|
|
86d31d7d29 | ||
|
|
f416342eff | ||
|
|
d73335ecbc | ||
|
|
641a3baadd | ||
|
|
f85d8add01 | ||
|
|
c278b7ad17 | ||
|
|
10e9c278ee | ||
|
|
47a025f39f | ||
|
|
749f999f2a | ||
|
|
d5a01c0310 | ||
|
|
097e132fba |
@@ -49,10 +49,11 @@ fix_permissions() {
|
||||
|
||||
log "Fixing permissions for ${IMMICH_WORKSPACE}"
|
||||
|
||||
run_cmd sudo find "${IMMICH_WORKSPACE}/server/upload" -not -path "${IMMICH_WORKSPACE}/server/upload/postgres/*" -not -path "${IMMICH_WORKSPACE}/server/upload/postgres" -exec chown node {} +
|
||||
|
||||
# Change ownership for directories that exist
|
||||
for dir in "${IMMICH_WORKSPACE}/.vscode" \
|
||||
"${IMMICH_WORKSPACE}/server/upload" \
|
||||
"${IMMICH_WORKSPACE}/.pnpm-store" \
|
||||
"${IMMICH_WORKSPACE}/.github/node_modules" \
|
||||
"${IMMICH_WORKSPACE}/cli/node_modules" \
|
||||
"${IMMICH_WORKSPACE}/e2e/node_modules" \
|
||||
"${IMMICH_WORKSPACE}/open-api/typescript-sdk/node_modules" \
|
||||
|
||||
@@ -8,21 +8,13 @@ services:
|
||||
- IMMICH_SERVER_URL=http://127.0.0.1:2283/
|
||||
volumes: !override
|
||||
- ..:/workspaces/immich
|
||||
- cli_node_modules:/workspaces/immich/cli/node_modules
|
||||
- e2e_node_modules:/workspaces/immich/e2e/node_modules
|
||||
- open_api_node_modules:/workspaces/immich/open-api/typescript-sdk/node_modules
|
||||
- server_node_modules:/workspaces/immich/server/node_modules
|
||||
- web_node_modules:/workspaces/immich/web/node_modules
|
||||
- ${UPLOAD_LOCATION:-upload1-devcontainer-volume}${UPLOAD_LOCATION:+/photos}:/data
|
||||
- ${UPLOAD_LOCATION:-upload2-devcontainer-volume}${UPLOAD_LOCATION:+/photos/upload}:/data/upload
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
|
||||
immich-web:
|
||||
env_file: !reset []
|
||||
|
||||
immich-machine-learning:
|
||||
env_file: !reset []
|
||||
|
||||
database:
|
||||
env_file: !reset []
|
||||
environment: !override
|
||||
@@ -33,17 +25,10 @@ services:
|
||||
POSTGRES_HOST_AUTH_METHOD: md5
|
||||
volumes:
|
||||
- ${UPLOAD_LOCATION:-postgres-devcontainer-volume}${UPLOAD_LOCATION:+/postgres}:/var/lib/postgresql/data
|
||||
|
||||
redis:
|
||||
env_file: !reset []
|
||||
|
||||
volumes:
|
||||
# Node modules for each service to avoid conflicts and ensure consistent dependencies
|
||||
cli_node_modules:
|
||||
e2e_node_modules:
|
||||
open_api_node_modules:
|
||||
server_node_modules:
|
||||
web_node_modules:
|
||||
upload1-devcontainer-volume:
|
||||
upload2-devcontainer-volume:
|
||||
postgres-devcontainer-volume:
|
||||
|
||||
@@ -3,15 +3,20 @@
|
||||
# shellcheck disable=SC1091
|
||||
source /immich-devcontainer/container-common.sh
|
||||
|
||||
log "Preparing Immich Nest API Server"
|
||||
log ""
|
||||
export CI=1
|
||||
run_cmd pnpm --filter immich install
|
||||
|
||||
log "Starting Nest API Server"
|
||||
log ""
|
||||
cd "${IMMICH_WORKSPACE}/server" || (
|
||||
log "Immich workspace not found"
|
||||
log "Immich workspace not found"jj
|
||||
exit 1
|
||||
)
|
||||
|
||||
while true; do
|
||||
run_cmd node ./node_modules/.bin/nest start --debug "0.0.0.0:9230" --watch
|
||||
run_cmd pnpm --filter immich exec nest start --debug "0.0.0.0:9230" --watch
|
||||
log "Nest API Server crashed with exit code $?. Respawning in 3s ..."
|
||||
sleep 3
|
||||
done
|
||||
|
||||
@@ -3,6 +3,13 @@
|
||||
# shellcheck disable=SC1091
|
||||
source /immich-devcontainer/container-common.sh
|
||||
|
||||
export CI=1
|
||||
log "Preparing Immich Web Frontend"
|
||||
log ""
|
||||
run_cmd pnpm --filter @immich/sdk install
|
||||
run_cmd pnpm --filter @immich/sdk build
|
||||
run_cmd pnpm --filter immich-web install
|
||||
|
||||
log "Starting Immich Web Frontend"
|
||||
log ""
|
||||
cd "${IMMICH_WORKSPACE}/web" || (
|
||||
@@ -16,7 +23,7 @@ until curl --output /dev/null --silent --head --fail "http://127.0.0.1:${IMMICH_
|
||||
done
|
||||
|
||||
while true; do
|
||||
run_cmd node ./node_modules/.bin/vite dev --host 0.0.0.0 --port "${DEV_PORT}"
|
||||
run_cmd pnpm --filter immich-web exec vite dev --host 0.0.0.0 --port "${DEV_PORT}"
|
||||
log "Web crashed with exit code $?. Respawning in 3s ..."
|
||||
sleep 3
|
||||
done
|
||||
|
||||
@@ -6,9 +6,6 @@ source /immich-devcontainer/container-common.sh
|
||||
log "Setting up Immich dev container..."
|
||||
fix_permissions
|
||||
|
||||
log "Installing npm dependencies (node_modules)..."
|
||||
install_dependencies
|
||||
|
||||
log "Setup complete, please wait while backend and frontend services automatically start"
|
||||
log
|
||||
log "If necessary, the services may be manually started using"
|
||||
|
||||
2
.github/.nvmrc
vendored
@@ -1 +1 @@
|
||||
22.17.1
|
||||
22.18.0
|
||||
|
||||
5
.github/ISSUE_TEMPLATE/bug_report.yaml
vendored
@@ -64,6 +64,11 @@ body:
|
||||
- label: Web
|
||||
- label: Mobile
|
||||
|
||||
- type: input
|
||||
attributes:
|
||||
label: Device make and model
|
||||
placeholder: Samsung S25 Android 16
|
||||
|
||||
- type: textarea
|
||||
validations:
|
||||
required: true
|
||||
|
||||
28
.github/package-lock.json
generated
vendored
@@ -1,28 +0,0 @@
|
||||
{
|
||||
"name": ".github",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"devDependencies": {
|
||||
"prettier": "^3.5.3"
|
||||
}
|
||||
},
|
||||
"node_modules/prettier": {
|
||||
"version": "3.6.2",
|
||||
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.6.2.tgz",
|
||||
"integrity": "sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"bin": {
|
||||
"prettier": "bin/prettier.cjs"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/prettier/prettier?sponsor=1"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
10
.github/workflows/build-mobile.yml
vendored
@@ -35,7 +35,7 @@ jobs:
|
||||
should_run: ${{ steps.found_paths.outputs.mobile == 'true' || steps.should_force.outputs.should_force == 'true' }}
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
@@ -61,7 +61,7 @@ jobs:
|
||||
runs-on: mich
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
ref: ${{ inputs.ref || github.sha }}
|
||||
persist-credentials: false
|
||||
@@ -79,7 +79,7 @@ jobs:
|
||||
|
||||
- name: Restore Gradle Cache
|
||||
id: cache-gradle-restore
|
||||
uses: actions/cache/restore@5a3ec84eff668545956fd18022155c47e93e2684 # v4
|
||||
uses: actions/cache/restore@0400d5f644dc74513175e3cd8d07132dd4860809 # v4
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
@@ -106,7 +106,7 @@ jobs:
|
||||
run: flutter pub get
|
||||
|
||||
- name: Generate translation file
|
||||
run: make translation
|
||||
run: dart run easy_localization:generate -S ../i18n && dart run bin/generate_keys.dart
|
||||
working-directory: ./mobile
|
||||
|
||||
- name: Generate platform APIs
|
||||
@@ -136,7 +136,7 @@ jobs:
|
||||
|
||||
- name: Save Gradle Cache
|
||||
id: cache-gradle-save
|
||||
uses: actions/cache/save@5a3ec84eff668545956fd18022155c47e93e2684 # v4
|
||||
uses: actions/cache/save@0400d5f644dc74513175e3cd8d07132dd4860809 # v4
|
||||
if: github.ref == 'refs/heads/main'
|
||||
with:
|
||||
path: |
|
||||
|
||||
2
.github/workflows/cache-cleanup.yml
vendored
@@ -19,7 +19,7 @@ jobs:
|
||||
actions: write
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
33
.github/workflows/cli.yml
vendored
@@ -29,25 +29,28 @@ jobs:
|
||||
working-directory: ./cli
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
# Setup .npmrc file to publish to npm
|
||||
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
- name: Setup pnpm
|
||||
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
|
||||
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: './cli/.nvmrc'
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: '**/pnpm-lock.yaml'
|
||||
|
||||
- name: Prepare SDK
|
||||
run: npm ci --prefix ../open-api/typescript-sdk/
|
||||
- name: Build SDK
|
||||
run: npm run build --prefix ../open-api/typescript-sdk/
|
||||
- run: npm ci
|
||||
- run: npm run build
|
||||
- run: npm publish
|
||||
- name: Setup typescript-sdk
|
||||
run: pnpm install && pnpm run build
|
||||
working-directory: ./open-api/typescript-sdk
|
||||
|
||||
- run: pnpm install --frozen-lockfile
|
||||
- run: pnpm build
|
||||
- run: pnpm publish
|
||||
if: ${{ github.event_name == 'release' }}
|
||||
env:
|
||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||
@@ -62,7 +65,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
@@ -73,7 +76,7 @@ jobs:
|
||||
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
|
||||
|
||||
- name: Login to GitHub Container Registry
|
||||
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
|
||||
uses: docker/login-action@184bdaa0721073962dff0199f1fb9940f07167d1 # v3.5.0
|
||||
if: ${{ !github.event.pull_request.head.repo.fork }}
|
||||
with:
|
||||
registry: ghcr.io
|
||||
@@ -88,7 +91,7 @@ jobs:
|
||||
|
||||
- name: Generate docker image tags
|
||||
id: metadata
|
||||
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
|
||||
uses: docker/metadata-action@c1e51972afc2121e065aed6d45c65596fe445f3f # v5.8.0
|
||||
with:
|
||||
flavor: |
|
||||
latest=false
|
||||
|
||||
96
.github/workflows/close-duplicates.yml
vendored
Normal file
@@ -0,0 +1,96 @@
|
||||
on:
|
||||
issues:
|
||||
types: [opened]
|
||||
discussion:
|
||||
types: [created]
|
||||
|
||||
name: Close likely duplicates
|
||||
permissions: {}
|
||||
|
||||
jobs:
|
||||
get_body:
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
EVENT: ${{ toJSON(github.event) }}
|
||||
outputs:
|
||||
body: ${{ steps.get_body.outputs.body }}
|
||||
steps:
|
||||
- id: get_body
|
||||
run: |
|
||||
BODY=$(echo """$EVENT""" | jq -r '.issue // .discussion | .body' | base64 -w 0)
|
||||
echo "body=$BODY" >> $GITHUB_OUTPUT
|
||||
|
||||
get_checkbox_json:
|
||||
runs-on: ubuntu-latest
|
||||
needs: get_body
|
||||
container:
|
||||
image: yshavit/mdq:0.8.0@sha256:c69224d34224a0043d9a3ee46679ba4a2a25afaac445f293d92afe13cd47fcea
|
||||
outputs:
|
||||
json: ${{ steps.get_checkbox.outputs.json }}
|
||||
steps:
|
||||
- id: get_checkbox
|
||||
env:
|
||||
BODY: ${{ needs.get_body.outputs.body }}
|
||||
run: |
|
||||
JSON=$(echo "$BODY" | base64 -d | /mdq --output json '# I have searched | - [?] Yes')
|
||||
echo "json=$JSON" >> $GITHUB_OUTPUT
|
||||
|
||||
close_and_comment:
|
||||
runs-on: ubuntu-latest
|
||||
needs: get_checkbox_json
|
||||
if: ${{ !fromJSON(needs.get_checkbox_json.outputs.json).items[0].list[0].checked }}
|
||||
permissions:
|
||||
issues: write
|
||||
discussions: write
|
||||
steps:
|
||||
- name: Close issue
|
||||
if: ${{ github.event_name == 'issues' }}
|
||||
env:
|
||||
GH_TOKEN: ${{ github.token }}
|
||||
NODE_ID: ${{ github.event.issue.node_id }}
|
||||
run: |
|
||||
gh api graphql \
|
||||
-f issueId="$NODE_ID" \
|
||||
-f body="This issue has automatically been closed as it is likely a duplicate. We get a lot of duplicate threads each day, which is why we ask you in the template to confirm that you searched for duplicates before opening one. If you're sure this is not a duplicate, please leave a comment and we will reopen the thread if necessary." \
|
||||
-f query='
|
||||
mutation CommentAndCloseIssue($issueId: ID!, $body: String!) {
|
||||
addComment(input: {
|
||||
subjectId: $issueId,
|
||||
body: $body
|
||||
}) {
|
||||
__typename
|
||||
}
|
||||
|
||||
closeIssue(input: {
|
||||
issueId: $issueId,
|
||||
stateReason: DUPLICATE
|
||||
}) {
|
||||
__typename
|
||||
}
|
||||
}'
|
||||
|
||||
- name: Close discussion
|
||||
if: ${{ github.event_name == 'discussion' && github.event.discussion.category.name == 'Feature Request' }}
|
||||
env:
|
||||
GH_TOKEN: ${{ github.token }}
|
||||
NODE_ID: ${{ github.event.discussion.node_id }}
|
||||
run: |
|
||||
gh api graphql \
|
||||
-f discussionId="$NODE_ID" \
|
||||
-f body="This discussion has automatically been closed as it is likely a duplicate. We get a lot of duplicate threads each day, which is why we ask you in the template to confirm that you searched for duplicates before opening one. If you're sure this is not a duplicate, please leave a comment and we will reopen the thread if necessary." \
|
||||
-f query='
|
||||
mutation CommentAndCloseDiscussion($discussionId: ID!, $body: String!) {
|
||||
addDiscussionComment(input: {
|
||||
discussionId: $discussionId,
|
||||
body: $body
|
||||
}) {
|
||||
__typename
|
||||
}
|
||||
|
||||
closeDiscussion(input: {
|
||||
discussionId: $discussionId,
|
||||
reason: DUPLICATE
|
||||
}) {
|
||||
__typename
|
||||
}
|
||||
}'
|
||||
8
.github/workflows/codeql-analysis.yml
vendored
@@ -44,13 +44,13 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@4e828ff8d448a8a6e532957b1811f387a63867e8 # v3.29.4
|
||||
uses: github/codeql-action/init@df559355d593797519d70b90fc8edd5db049e7a2 # v3.29.9
|
||||
with:
|
||||
languages: ${{ matrix.language }}
|
||||
# If you wish to specify custom queries, you can do so here or in a config file.
|
||||
@@ -63,7 +63,7 @@ jobs:
|
||||
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
||||
# If this step fails, then you should remove it and run the build manually (see below)
|
||||
- name: Autobuild
|
||||
uses: github/codeql-action/autobuild@4e828ff8d448a8a6e532957b1811f387a63867e8 # v3.29.4
|
||||
uses: github/codeql-action/autobuild@df559355d593797519d70b90fc8edd5db049e7a2 # v3.29.9
|
||||
|
||||
# ℹ️ Command-line programs to run using the OS shell.
|
||||
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
|
||||
@@ -76,6 +76,6 @@ jobs:
|
||||
# ./location_of_script_within_repo/buildscript.sh
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@4e828ff8d448a8a6e532957b1811f387a63867e8 # v3.29.4
|
||||
uses: github/codeql-action/analyze@df559355d593797519d70b90fc8edd5db049e7a2 # v3.29.9
|
||||
with:
|
||||
category: '/language:${{matrix.language}}'
|
||||
|
||||
6
.github/workflows/docker.yml
vendored
@@ -24,7 +24,7 @@ jobs:
|
||||
should_run_ml: ${{ steps.found_paths.outputs.machine-learning == 'true' || steps.should_force.outputs.should_force == 'true' }}
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
- id: found_paths
|
||||
@@ -60,7 +60,7 @@ jobs:
|
||||
suffix: ['', '-cuda', '-rocm', '-openvino', '-armnn', '-rknn']
|
||||
steps:
|
||||
- name: Login to GitHub Container Registry
|
||||
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
|
||||
uses: docker/login-action@184bdaa0721073962dff0199f1fb9940f07167d1 # v3.5.0
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
@@ -89,7 +89,7 @@ jobs:
|
||||
suffix: ['']
|
||||
steps:
|
||||
- name: Login to GitHub Container Registry
|
||||
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
|
||||
uses: docker/login-action@184bdaa0721073962dff0199f1fb9940f07167d1 # v3.5.0
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
|
||||
23
.github/workflows/docs-build.yml
vendored
@@ -18,10 +18,10 @@ jobs:
|
||||
permissions:
|
||||
contents: read
|
||||
outputs:
|
||||
should_run: ${{ steps.found_paths.outputs.docs == 'true' || steps.should_force.outputs.should_force == 'true' }}
|
||||
should_run: ${{ steps.found_paths.outputs.docs == 'true' || steps.found_paths.outputs.open-api == 'true' || steps.should_force.outputs.should_force == 'true' }}
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
- id: found_paths
|
||||
@@ -32,6 +32,8 @@ jobs:
|
||||
- 'docs/**'
|
||||
workflow:
|
||||
- '.github/workflows/docs-build.yml'
|
||||
open-api:
|
||||
- 'open-api/immich-openapi-specs.json'
|
||||
- name: Check if we should force jobs to run
|
||||
id: should_force
|
||||
run: echo "should_force=${{ steps.found_paths.outputs.workflow == 'true' || github.event_name == 'release' || github.ref_name == 'main' }}" >> "$GITHUB_OUTPUT"
|
||||
@@ -49,25 +51,28 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Setup pnpm
|
||||
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
|
||||
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: './docs/.nvmrc'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: '**/pnpm-lock.yaml'
|
||||
|
||||
- name: Run npm install
|
||||
run: npm ci
|
||||
- name: Run install
|
||||
run: pnpm install
|
||||
|
||||
- name: Check formatting
|
||||
run: npm run format
|
||||
run: pnpm format
|
||||
|
||||
- name: Run build
|
||||
run: npm run build
|
||||
run: pnpm build
|
||||
|
||||
- name: Upload build output
|
||||
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
|
||||
|
||||
2
.github/workflows/docs-deploy.yml
vendored
@@ -108,7 +108,7 @@ jobs:
|
||||
if: ${{ fromJson(needs.checks.outputs.artifact).found && fromJson(needs.checks.outputs.parameters).shouldDeploy }}
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
2
.github/workflows/docs-destroy.yml
vendored
@@ -14,7 +14,7 @@ jobs:
|
||||
pull-requests: write
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
8
.github/workflows/fix-format.yml
vendored
@@ -16,13 +16,13 @@ jobs:
|
||||
steps:
|
||||
- name: Generate a token
|
||||
id: generate-token
|
||||
uses: actions/create-github-app-token@df432ceedc7162793a195dd1713ff69aefc7379e # v2.0.6
|
||||
uses: actions/create-github-app-token@a8d616148505b5069dccd32f177bb87d7f39123b # v2.1.1
|
||||
with:
|
||||
app-id: ${{ secrets.PUSH_O_MATIC_APP_ID }}
|
||||
private-key: ${{ secrets.PUSH_O_MATIC_APP_KEY }}
|
||||
|
||||
- name: 'Checkout'
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
ref: ${{ github.event.pull_request.head.ref }}
|
||||
token: ${{ steps.generate-token.outputs.token }}
|
||||
@@ -32,8 +32,8 @@ jobs:
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: './server/.nvmrc'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: '**/pnpm-lock.yaml'
|
||||
|
||||
- name: Fix formatting
|
||||
run: make install-all && make format-all
|
||||
|
||||
8
.github/workflows/prepare-release.yml
vendored
@@ -32,13 +32,13 @@ jobs:
|
||||
steps:
|
||||
- name: Generate a token
|
||||
id: generate-token
|
||||
uses: actions/create-github-app-token@df432ceedc7162793a195dd1713ff69aefc7379e # v2.0.6
|
||||
uses: actions/create-github-app-token@a8d616148505b5069dccd32f177bb87d7f39123b # v2.1.1
|
||||
with:
|
||||
app-id: ${{ secrets.PUSH_O_MATIC_APP_ID }}
|
||||
private-key: ${{ secrets.PUSH_O_MATIC_APP_KEY }}
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
token: ${{ steps.generate-token.outputs.token }}
|
||||
persist-credentials: true
|
||||
@@ -83,13 +83,13 @@ jobs:
|
||||
steps:
|
||||
- name: Generate a token
|
||||
id: generate-token
|
||||
uses: actions/create-github-app-token@df432ceedc7162793a195dd1713ff69aefc7379e # v2.0.6
|
||||
uses: actions/create-github-app-token@a8d616148505b5069dccd32f177bb87d7f39123b # v2.1.1
|
||||
with:
|
||||
app-id: ${{ secrets.PUSH_O_MATIC_APP_ID }}
|
||||
private-key: ${{ secrets.PUSH_O_MATIC_APP_KEY }}
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
token: ${{ steps.generate-token.outputs.token }}
|
||||
persist-credentials: false
|
||||
|
||||
14
.github/workflows/preview-label.yaml
vendored
@@ -20,7 +20,7 @@ jobs:
|
||||
|
||||
remove-label:
|
||||
runs-on: ubuntu-latest
|
||||
if: ${{ github.event.action == 'closed' && contains(github.event.pull_request.labels.*.name, 'preview') }}
|
||||
if: ${{ (github.event.action == 'closed' || github.event.pull_request.head.repo.fork) && contains(github.event.pull_request.labels.*.name, 'preview') }}
|
||||
permissions:
|
||||
pull-requests: write
|
||||
steps:
|
||||
@@ -33,3 +33,15 @@ jobs:
|
||||
repo: context.repo.repo,
|
||||
name: 'preview'
|
||||
})
|
||||
|
||||
- uses: mshick/add-pr-comment@b8f338c590a895d50bcbfa6c5859251edc8952fc # v2.8.2
|
||||
if: ${{ github.event.pull_request.head.repo.fork }}
|
||||
with:
|
||||
message-id: 'preview-status'
|
||||
message: 'PRs from forks cannot have preview environments.'
|
||||
|
||||
- uses: mshick/add-pr-comment@b8f338c590a895d50bcbfa6c5859251edc8952fc # v2.8.2
|
||||
if: ${{ !github.event.pull_request.head.repo.fork }}
|
||||
with:
|
||||
message-id: 'preview-status'
|
||||
message: 'Preview environment has been removed.'
|
||||
|
||||
15
.github/workflows/sdk.yml
vendored
@@ -16,22 +16,25 @@ jobs:
|
||||
run:
|
||||
working-directory: ./open-api/typescript-sdk
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Setup pnpm
|
||||
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
|
||||
|
||||
# Setup .npmrc file to publish to npm
|
||||
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: './open-api/typescript-sdk/.nvmrc'
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: '**/pnpm-lock.yaml'
|
||||
- name: Install deps
|
||||
run: npm ci
|
||||
run: pnpm install --frozen-lockfile
|
||||
- name: Build
|
||||
run: npm run build
|
||||
run: pnpm build
|
||||
- name: Publish
|
||||
run: npm publish
|
||||
run: pnpm publish
|
||||
env:
|
||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||
|
||||
10
.github/workflows/static_analysis.yml
vendored
@@ -20,7 +20,7 @@ jobs:
|
||||
should_run: ${{ steps.found_paths.outputs.mobile == 'true' || steps.should_force.outputs.should_force == 'true' }}
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
- id: found_paths
|
||||
@@ -47,7 +47,7 @@ jobs:
|
||||
working-directory: ./mobile
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
@@ -68,7 +68,7 @@ jobs:
|
||||
working-directory: ./mobile
|
||||
|
||||
- name: Generate translation file
|
||||
run: make translation
|
||||
run: dart run easy_localization:generate -S ../i18n && dart run bin/generate_keys.dart
|
||||
|
||||
- name: Run Build Runner
|
||||
run: make build
|
||||
@@ -116,7 +116,7 @@ jobs:
|
||||
actions: read
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
@@ -129,7 +129,7 @@ jobs:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Upload SARIF file
|
||||
uses: github/codeql-action/upload-sarif@4e828ff8d448a8a6e532957b1811f387a63867e8 # v3.29.4
|
||||
uses: github/codeql-action/upload-sarif@df559355d593797519d70b90fc8edd5db049e7a2 # v3.29.9
|
||||
with:
|
||||
sarif_file: results.sarif
|
||||
category: zizmor
|
||||
|
||||
493
.github/workflows/test.yml
vendored
@@ -4,13 +4,10 @@ on:
|
||||
pull_request:
|
||||
push:
|
||||
branches: [main]
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: {}
|
||||
|
||||
jobs:
|
||||
pre-job:
|
||||
runs-on: ubuntu-latest
|
||||
@@ -29,10 +26,9 @@ jobs:
|
||||
should_run_.github: ${{ steps.found_paths.outputs['.github'] == 'true' || steps.should_force.outputs.should_force == 'true' }} # redundant to have should_force but if someone changes the trigger then this won't have to be changed
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- id: found_paths
|
||||
uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
|
||||
with:
|
||||
@@ -58,11 +54,9 @@ jobs:
|
||||
- '.github/workflows/test.yml'
|
||||
.github:
|
||||
- '.github/**'
|
||||
|
||||
- name: Check if we should force jobs to run
|
||||
id: should_force
|
||||
run: echo "should_force=${{ steps.found_paths.outputs.workflow == 'true' || github.event_name == 'workflow_dispatch' }}" >> "$GITHUB_OUTPUT"
|
||||
|
||||
server-unit-tests:
|
||||
name: Test & Lint Server
|
||||
needs: pre-job
|
||||
@@ -73,39 +67,33 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
working-directory: ./server
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Setup pnpm
|
||||
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: './server/.nvmrc'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
|
||||
- name: Run npm install
|
||||
run: npm ci
|
||||
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: '**/pnpm-lock.yaml'
|
||||
- name: Run package manager install
|
||||
run: pnpm install
|
||||
- name: Run linter
|
||||
run: npm run lint
|
||||
run: pnpm lint
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Run formatter
|
||||
run: npm run format
|
||||
run: pnpm format
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Run tsc
|
||||
run: npm run check
|
||||
run: pnpm check
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Run small tests & coverage
|
||||
run: npm test
|
||||
run: pnpm test
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
cli-unit-tests:
|
||||
name: Unit Test CLI
|
||||
needs: pre-job
|
||||
@@ -116,43 +104,36 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
working-directory: ./cli
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Setup pnpm
|
||||
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: './cli/.nvmrc'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: '**/pnpm-lock.yaml'
|
||||
- name: Setup typescript-sdk
|
||||
run: npm ci && npm run build
|
||||
run: pnpm install && pnpm run build
|
||||
working-directory: ./open-api/typescript-sdk
|
||||
|
||||
- name: Install deps
|
||||
run: npm ci
|
||||
|
||||
run: pnpm install
|
||||
- name: Run linter
|
||||
run: npm run lint
|
||||
run: pnpm lint
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Run formatter
|
||||
run: npm run format
|
||||
run: pnpm format
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Run tsc
|
||||
run: npm run check
|
||||
run: pnpm check
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Run unit tests & coverage
|
||||
run: npm run test
|
||||
run: pnpm test
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
cli-unit-tests-win:
|
||||
name: Unit Test CLI (Windows)
|
||||
needs: pre-job
|
||||
@@ -163,36 +144,31 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
working-directory: ./cli
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Setup pnpm
|
||||
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: './cli/.nvmrc'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: '**/pnpm-lock.yaml'
|
||||
- name: Setup typescript-sdk
|
||||
run: npm ci && npm run build
|
||||
run: pnpm install --frozen-lockfile && pnpm build
|
||||
working-directory: ./open-api/typescript-sdk
|
||||
|
||||
- name: Install deps
|
||||
run: npm ci
|
||||
|
||||
run: pnpm install --frozen-lockfile
|
||||
# Skip linter & formatter in Windows test.
|
||||
- name: Run tsc
|
||||
run: npm run check
|
||||
run: pnpm check
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Run unit tests & coverage
|
||||
run: npm run test
|
||||
run: pnpm test
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
web-lint:
|
||||
name: Lint Web
|
||||
needs: pre-job
|
||||
@@ -203,39 +179,33 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
working-directory: ./web
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Setup pnpm
|
||||
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: './web/.nvmrc'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: '**/pnpm-lock.yaml'
|
||||
- name: Run setup typescript-sdk
|
||||
run: npm ci && npm run build
|
||||
run: pnpm install --frozen-lockfile && pnpm build
|
||||
working-directory: ./open-api/typescript-sdk
|
||||
|
||||
- name: Run npm install
|
||||
run: npm ci
|
||||
|
||||
- name: Run pnpm install
|
||||
run: pnpm rebuild && pnpm install --frozen-lockfile
|
||||
- name: Run linter
|
||||
run: npm run lint:p
|
||||
run: pnpm lint:p
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Run formatter
|
||||
run: npm run format
|
||||
run: pnpm format
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Run svelte checks
|
||||
run: npm run check:svelte
|
||||
run: pnpm check:svelte
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
web-unit-tests:
|
||||
name: Test Web
|
||||
needs: pre-job
|
||||
@@ -246,35 +216,30 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
working-directory: ./web
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Setup pnpm
|
||||
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: './web/.nvmrc'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: '**/pnpm-lock.yaml'
|
||||
- name: Run setup typescript-sdk
|
||||
run: npm ci && npm run build
|
||||
run: pnpm install --frozen-lockfile && pnpm build
|
||||
working-directory: ./open-api/typescript-sdk
|
||||
|
||||
- name: Run npm install
|
||||
run: npm ci
|
||||
|
||||
run: pnpm install --frozen-lockfile
|
||||
- name: Run tsc
|
||||
run: npm run check:typescript
|
||||
run: pnpm check:typescript
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Run unit tests & coverage
|
||||
run: npm run test
|
||||
run: pnpm test
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
i18n-tests:
|
||||
name: Test i18n
|
||||
needs: pre-job
|
||||
@@ -284,30 +249,27 @@ jobs:
|
||||
contents: read
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Setup pnpm
|
||||
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: './web/.nvmrc'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: '**/pnpm-lock.yaml'
|
||||
- name: Install dependencies
|
||||
run: npm --prefix=web ci
|
||||
|
||||
run: pnpm --filter=immich-web install --frozen-lockfile
|
||||
- name: Format
|
||||
run: npm --prefix=web run format:i18n
|
||||
|
||||
run: pnpm --filter=immich-web format:i18n
|
||||
- name: Find file changes
|
||||
uses: tj-actions/verify-changed-files@a1c6acee9df209257a246f2cc6ae8cb6581c1edf # v20.0.4
|
||||
id: verify-changed-files
|
||||
with:
|
||||
files: |
|
||||
i18n/**
|
||||
|
||||
- name: Verify files have not changed
|
||||
if: steps.verify-changed-files.outputs.files_changed == 'true'
|
||||
env:
|
||||
@@ -316,7 +278,6 @@ jobs:
|
||||
echo "ERROR: i18n files not up to date!"
|
||||
echo "Changed files: ${CHANGED_FILES}"
|
||||
exit 1
|
||||
|
||||
e2e-tests-lint:
|
||||
name: End-to-End Lint
|
||||
needs: pre-job
|
||||
@@ -327,41 +288,35 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
working-directory: ./e2e
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Setup pnpm
|
||||
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: './e2e/.nvmrc'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: '**/pnpm-lock.yaml'
|
||||
- name: Run setup typescript-sdk
|
||||
run: npm ci && npm run build
|
||||
run: pnpm install --frozen-lockfile && pnpm build
|
||||
working-directory: ./open-api/typescript-sdk
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
run: pnpm install --frozen-lockfile
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Run linter
|
||||
run: npm run lint
|
||||
run: pnpm lint
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Run formatter
|
||||
run: npm run format
|
||||
run: pnpm format
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Run tsc
|
||||
run: npm run check
|
||||
run: pnpm check
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
server-medium-tests:
|
||||
name: Medium Tests (Server)
|
||||
needs: pre-job
|
||||
@@ -372,27 +327,24 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
working-directory: ./server
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Setup pnpm
|
||||
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: './server/.nvmrc'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
|
||||
- name: Run npm install
|
||||
run: npm ci
|
||||
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: '**/pnpm-lock.yaml'
|
||||
- name: Run pnpm install
|
||||
run: SHARP_IGNORE_GLOBAL_LIBVIPS=true pnpm install --frozen-lockfile
|
||||
- name: Run medium tests
|
||||
run: npm run test:medium
|
||||
run: pnpm test:medium
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
e2e-tests-server-cli:
|
||||
name: End-to-End Tests (Server & CLI)
|
||||
needs: pre-job
|
||||
@@ -406,43 +358,41 @@ jobs:
|
||||
strategy:
|
||||
matrix:
|
||||
runner: [ubuntu-latest, ubuntu-24.04-arm]
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: 'recursive'
|
||||
|
||||
- name: Setup pnpm
|
||||
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: './e2e/.nvmrc'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: '**/pnpm-lock.yaml'
|
||||
- name: Run setup typescript-sdk
|
||||
run: npm ci && npm run build
|
||||
run: pnpm install --frozen-lockfile && pnpm build
|
||||
working-directory: ./open-api/typescript-sdk
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Run setup web
|
||||
run: pnpm install --frozen-lockfile && pnpm exec svelte-kit sync
|
||||
working-directory: ./web
|
||||
if: ${{ !cancelled() }}
|
||||
- name: Run setup cli
|
||||
run: npm ci && npm run build
|
||||
run: pnpm install --frozen-lockfile && pnpm build
|
||||
working-directory: ./cli
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
run: pnpm install --frozen-lockfile
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Docker build
|
||||
run: docker compose build
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Run e2e tests (api & cli)
|
||||
run: npm run test
|
||||
run: pnpm test
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
e2e-tests-web:
|
||||
name: End-to-End Tests (Web)
|
||||
needs: pre-job
|
||||
@@ -456,42 +406,36 @@ jobs:
|
||||
strategy:
|
||||
matrix:
|
||||
runner: [ubuntu-latest, ubuntu-24.04-arm]
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: 'recursive'
|
||||
|
||||
- name: Setup pnpm
|
||||
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: './e2e/.nvmrc'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: '**/pnpm-lock.yaml'
|
||||
- name: Run setup typescript-sdk
|
||||
run: npm ci && npm run build
|
||||
run: pnpm install --frozen-lockfile && pnpm build
|
||||
working-directory: ./open-api/typescript-sdk
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
run: pnpm install --frozen-lockfile
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Install Playwright Browsers
|
||||
run: npx playwright install chromium --only-shell
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Docker build
|
||||
run: docker compose build
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
- name: Run e2e tests (web)
|
||||
run: npx playwright test
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
success-check-e2e:
|
||||
name: End-to-End Tests Success
|
||||
needs: [e2e-tests-server-cli, e2e-tests-web]
|
||||
@@ -502,7 +446,6 @@ jobs:
|
||||
- uses: immich-app/devtools/actions/success-check@68f10eb389bb02a3cf9d1156111964c549eb421b # 0.0.4
|
||||
with:
|
||||
needs: ${{ toJSON(needs) }}
|
||||
|
||||
mobile-unit-tests:
|
||||
name: Unit Test Mobile
|
||||
needs: pre-job
|
||||
@@ -511,24 +454,20 @@ jobs:
|
||||
permissions:
|
||||
contents: read
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Setup Flutter SDK
|
||||
uses: subosito/flutter-action@fd55f4c5af5b953cc57a2be44cb082c8f6635e8e # v2.21.0
|
||||
with:
|
||||
channel: 'stable'
|
||||
flutter-version-file: ./mobile/pubspec.yaml
|
||||
|
||||
- name: Generate translation file
|
||||
run: make translation
|
||||
run: dart run easy_localization:generate -S ../i18n && dart run bin/generate_keys.dart
|
||||
working-directory: ./mobile
|
||||
|
||||
- name: Run tests
|
||||
working-directory: ./mobile
|
||||
run: flutter test -j 1
|
||||
|
||||
ml-unit-tests:
|
||||
name: Unit Test ML
|
||||
needs: pre-job
|
||||
@@ -540,10 +479,9 @@ jobs:
|
||||
run:
|
||||
working-directory: ./machine-learning
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Install uv
|
||||
uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5.4.2
|
||||
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
||||
@@ -566,7 +504,6 @@ jobs:
|
||||
- name: Run tests and coverage
|
||||
run: |
|
||||
uv run pytest --cov=immich_ml --cov-report term-missing
|
||||
|
||||
github-files-formatting:
|
||||
name: .github Files Formatting
|
||||
needs: pre-job
|
||||
@@ -577,45 +514,38 @@ jobs:
|
||||
defaults:
|
||||
run:
|
||||
working-directory: ./.github
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Setup pnpm
|
||||
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: './.github/.nvmrc'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
|
||||
- name: Run npm install
|
||||
run: npm ci
|
||||
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: '**/pnpm-lock.yaml'
|
||||
- name: Run pnpm install
|
||||
run: pnpm install --frozen-lockfile
|
||||
- name: Run formatter
|
||||
run: npm run format
|
||||
run: pnpm format
|
||||
if: ${{ !cancelled() }}
|
||||
|
||||
shellcheck:
|
||||
name: ShellCheck
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Run ShellCheck
|
||||
uses: ludeeus/action-shellcheck@00cae500b08a931fb5698e11e79bfbd38e612a38 # 2.0.0
|
||||
with:
|
||||
ignore_paths: >-
|
||||
**/open-api/**
|
||||
**/openapi**
|
||||
**/node_modules/**
|
||||
|
||||
**/open-api/** **/openapi** **/node_modules/**
|
||||
generated-api-up-to-date:
|
||||
name: OpenAPI Clients
|
||||
runs-on: ubuntu-latest
|
||||
@@ -623,26 +553,23 @@ jobs:
|
||||
contents: read
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Setup pnpm
|
||||
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: './server/.nvmrc'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: '**/pnpm-lock.yaml'
|
||||
- name: Install server dependencies
|
||||
run: npm --prefix=server ci
|
||||
|
||||
run: SHARP_IGNORE_GLOBAL_LIBVIPS=true pnpm --filter immich install --frozen-lockfile
|
||||
- name: Build the app
|
||||
run: npm --prefix=server run build
|
||||
|
||||
run: pnpm --filter immich build
|
||||
- name: Run API generation
|
||||
run: make open-api
|
||||
|
||||
- name: Find file changes
|
||||
uses: tj-actions/verify-changed-files@a1c6acee9df209257a246f2cc6ae8cb6581c1edf # v20.0.4
|
||||
id: verify-changed-files
|
||||
@@ -651,7 +578,6 @@ jobs:
|
||||
mobile/openapi
|
||||
open-api/typescript-sdk
|
||||
open-api/immich-openapi-specs.json
|
||||
|
||||
- name: Verify files have not changed
|
||||
if: steps.verify-changed-files.outputs.files_changed == 'true'
|
||||
env:
|
||||
@@ -660,7 +586,6 @@ jobs:
|
||||
echo "ERROR: Generated files not up to date!"
|
||||
echo "Changed files: ${CHANGED_FILES}"
|
||||
exit 1
|
||||
|
||||
sql-schema-up-to-date:
|
||||
name: SQL Schema Checks
|
||||
runs-on: ubuntu-latest
|
||||
@@ -674,45 +599,36 @@ jobs:
|
||||
POSTGRES_USER: postgres
|
||||
POSTGRES_DB: immich
|
||||
options: >-
|
||||
--health-cmd pg_isready
|
||||
--health-interval 10s
|
||||
--health-timeout 5s
|
||||
--health-retries 5
|
||||
--health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
|
||||
ports:
|
||||
- 5432:5432
|
||||
defaults:
|
||||
run:
|
||||
working-directory: ./server
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Setup pnpm
|
||||
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: './server/.nvmrc'
|
||||
cache: 'npm'
|
||||
cache-dependency-path: '**/package-lock.json'
|
||||
|
||||
cache: 'pnpm'
|
||||
cache-dependency-path: '**/pnpm-lock.yaml'
|
||||
- name: Install server dependencies
|
||||
run: npm ci
|
||||
|
||||
run: SHARP_IGNORE_GLOBAL_LIBVIPS=true pnpm install --frozen-lockfile
|
||||
- name: Build the app
|
||||
run: npm run build
|
||||
|
||||
run: pnpm build
|
||||
- name: Run existing migrations
|
||||
run: npm run migrations:run
|
||||
|
||||
run: pnpm migrations:run
|
||||
- name: Test npm run schema:reset command works
|
||||
run: npm run schema:reset
|
||||
|
||||
run: pnpm schema:reset
|
||||
- name: Generate new migrations
|
||||
continue-on-error: true
|
||||
run: npm run migrations:generate src/TestMigration
|
||||
|
||||
run: pnpm migrations:generate src/TestMigration
|
||||
- name: Find file changes
|
||||
uses: tj-actions/verify-changed-files@a1c6acee9df209257a246f2cc6ae8cb6581c1edf # v20.0.4
|
||||
id: verify-changed-files
|
||||
@@ -728,19 +644,16 @@ jobs:
|
||||
echo "Changed files: ${CHANGED_FILES}"
|
||||
cat ./src/*-TestMigration.ts
|
||||
exit 1
|
||||
|
||||
- name: Run SQL generation
|
||||
run: npm run sync:sql
|
||||
run: pnpm sync:sql
|
||||
env:
|
||||
DB_URL: postgres://postgres:postgres@localhost:5432/immich
|
||||
|
||||
- name: Find file changes
|
||||
uses: tj-actions/verify-changed-files@a1c6acee9df209257a246f2cc6ae8cb6581c1edf # v20.0.4
|
||||
id: verify-changed-sql-files
|
||||
with:
|
||||
files: |
|
||||
server/src/queries
|
||||
|
||||
- name: Verify SQL files have not changed
|
||||
if: steps.verify-changed-sql-files.outputs.files_changed == 'true'
|
||||
env:
|
||||
@@ -751,77 +664,77 @@ jobs:
|
||||
git diff
|
||||
exit 1
|
||||
|
||||
# mobile-integration-tests:
|
||||
# name: Run mobile end-to-end integration tests
|
||||
# runs-on: macos-latest
|
||||
# steps:
|
||||
# - uses: actions/checkout@v4
|
||||
# - uses: actions/setup-java@v3
|
||||
# with:
|
||||
# distribution: 'zulu'
|
||||
# java-version: '12.x'
|
||||
# cache: 'gradle'
|
||||
# - name: Cache android SDK
|
||||
# uses: actions/cache@v3
|
||||
# id: android-sdk
|
||||
# with:
|
||||
# key: android-sdk
|
||||
# path: |
|
||||
# /usr/local/lib/android/
|
||||
# ~/.android
|
||||
# - name: Cache Gradle
|
||||
# uses: actions/cache@v3
|
||||
# with:
|
||||
# path: |
|
||||
# ./mobile/build/
|
||||
# ./mobile/android/.gradle/
|
||||
# key: ${{ runner.os }}-flutter-${{ hashFiles('**/*.gradle*', 'pubspec.lock') }}
|
||||
# - name: Setup Android SDK
|
||||
# if: steps.android-sdk.outputs.cache-hit != 'true'
|
||||
# uses: android-actions/setup-android@v2
|
||||
# - name: AVD cache
|
||||
# uses: actions/cache@v3
|
||||
# id: avd-cache
|
||||
# with:
|
||||
# path: |
|
||||
# ~/.android/avd/*
|
||||
# ~/.android/adb*
|
||||
# key: avd-29
|
||||
# - name: create AVD and generate snapshot for caching
|
||||
# if: steps.avd-cache.outputs.cache-hit != 'true'
|
||||
# uses: reactivecircus/android-emulator-runner@v2.27.0
|
||||
# with:
|
||||
# working-directory: ./mobile
|
||||
# cores: 2
|
||||
# api-level: 29
|
||||
# arch: x86_64
|
||||
# profile: pixel
|
||||
# target: default
|
||||
# force-avd-creation: false
|
||||
# emulator-options: -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
# disable-animations: false
|
||||
# script: echo "Generated AVD snapshot for caching."
|
||||
# - name: Setup Flutter SDK
|
||||
# uses: subosito/flutter-action@v2
|
||||
# with:
|
||||
# channel: 'stable'
|
||||
# flutter-version: '3.7.3'
|
||||
# cache: true
|
||||
# - name: Run integration tests
|
||||
# uses: Wandalen/wretry.action@master
|
||||
# with:
|
||||
# action: reactivecircus/android-emulator-runner@v2.27.0
|
||||
# with: |
|
||||
# working-directory: ./mobile
|
||||
# cores: 2
|
||||
# api-level: 29
|
||||
# arch: x86_64
|
||||
# profile: pixel
|
||||
# target: default
|
||||
# force-avd-creation: false
|
||||
# emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
# disable-animations: true
|
||||
# script: |
|
||||
# flutter pub get
|
||||
# flutter test integration_test
|
||||
# attempt_limit: 3
|
||||
# mobile-integration-tests:
|
||||
# name: Run mobile end-to-end integration tests
|
||||
# runs-on: macos-latest
|
||||
# steps:
|
||||
# - uses: actions/checkout@v4
|
||||
# - uses: actions/setup-java@v3
|
||||
# with:
|
||||
# distribution: 'zulu'
|
||||
# java-version: '12.x'
|
||||
# cache: 'gradle'
|
||||
# - name: Cache android SDK
|
||||
# uses: actions/cache@v3
|
||||
# id: android-sdk
|
||||
# with:
|
||||
# key: android-sdk
|
||||
# path: |
|
||||
# /usr/local/lib/android/
|
||||
# ~/.android
|
||||
# - name: Cache Gradle
|
||||
# uses: actions/cache@v3
|
||||
# with:
|
||||
# path: |
|
||||
# ./mobile/build/
|
||||
# ./mobile/android/.gradle/
|
||||
# key: ${{ runner.os }}-flutter-${{ hashFiles('**/*.gradle*', 'pubspec.lock') }}
|
||||
# - name: Setup Android SDK
|
||||
# if: steps.android-sdk.outputs.cache-hit != 'true'
|
||||
# uses: android-actions/setup-android@v2
|
||||
# - name: AVD cache
|
||||
# uses: actions/cache@v3
|
||||
# id: avd-cache
|
||||
# with:
|
||||
# path: |
|
||||
# ~/.android/avd/*
|
||||
# ~/.android/adb*
|
||||
# key: avd-29
|
||||
# - name: create AVD and generate snapshot for caching
|
||||
# if: steps.avd-cache.outputs.cache-hit != 'true'
|
||||
# uses: reactivecircus/android-emulator-runner@v2.27.0
|
||||
# with:
|
||||
# working-directory: ./mobile
|
||||
# cores: 2
|
||||
# api-level: 29
|
||||
# arch: x86_64
|
||||
# profile: pixel
|
||||
# target: default
|
||||
# force-avd-creation: false
|
||||
# emulator-options: -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
# disable-animations: false
|
||||
# script: echo "Generated AVD snapshot for caching."
|
||||
# - name: Setup Flutter SDK
|
||||
# uses: subosito/flutter-action@v2
|
||||
# with:
|
||||
# channel: 'stable'
|
||||
# flutter-version: '3.7.3'
|
||||
# cache: true
|
||||
# - name: Run integration tests
|
||||
# uses: Wandalen/wretry.action@master
|
||||
# with:
|
||||
# action: reactivecircus/android-emulator-runner@v2.27.0
|
||||
# with: |
|
||||
# working-directory: ./mobile
|
||||
# cores: 2
|
||||
# api-level: 29
|
||||
# arch: x86_64
|
||||
# profile: pixel
|
||||
# target: default
|
||||
# force-avd-creation: false
|
||||
# emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
|
||||
# disable-animations: true
|
||||
# script: |
|
||||
# flutter pub get
|
||||
# flutter test integration_test
|
||||
# attempt_limit: 3
|
||||
|
||||
2
.github/workflows/weblate-lock.yml
vendored
@@ -15,7 +15,7 @@ jobs:
|
||||
should_run: ${{ steps.found_paths.outputs.i18n == 'true' && github.head_ref != 'chore/translations'}}
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
||||
with:
|
||||
persist-credentials: false
|
||||
- id: found_paths
|
||||
|
||||
39
.pnpmfile.cjs
Normal file
@@ -0,0 +1,39 @@
|
||||
module.exports = {
|
||||
hooks: {
|
||||
readPackage: (pkg) => {
|
||||
if (!pkg.name) {
|
||||
return pkg;
|
||||
}
|
||||
switch (pkg.name) {
|
||||
case "exiftool-vendored":
|
||||
if (pkg.optionalDependencies["exiftool-vendored.pl"]) {
|
||||
// make exiftool-vendored.pl a regular dependency
|
||||
pkg.dependencies["exiftool-vendored.pl"] =
|
||||
pkg.optionalDependencies["exiftool-vendored.pl"];
|
||||
delete pkg.optionalDependencies["exiftool-vendored.pl"];
|
||||
}
|
||||
break;
|
||||
case "sharp":
|
||||
const optionalDeps = Object.keys(pkg.optionalDependencies).filter(
|
||||
(dep) => dep.startsWith("@img")
|
||||
);
|
||||
for (const dep of optionalDeps) {
|
||||
// remove all optionalDependencies from sharp (they will be compiled from source), except:
|
||||
// include the precompiled musl version of sharp, for web
|
||||
// include precompiled linux-x64 version of sharp, for server (stage: web-prod)
|
||||
// include precompiled linux-arm64 version of sharp, for server (stage: web-prod)
|
||||
if (
|
||||
dep.includes("musl") ||
|
||||
dep.includes("linux-x64") ||
|
||||
dep.includes("linux-arm64")
|
||||
) {
|
||||
continue;
|
||||
}
|
||||
delete pkg.optionalDependencies[dep];
|
||||
}
|
||||
break;
|
||||
}
|
||||
return pkg;
|
||||
},
|
||||
},
|
||||
};
|
||||
3
.vscode/settings.json
vendored
@@ -56,7 +56,8 @@
|
||||
"explorer.fileNesting.enabled": true,
|
||||
"explorer.fileNesting.patterns": {
|
||||
"*.dart": "${capture}.g.dart,${capture}.gr.dart,${capture}.drift.dart",
|
||||
"*.ts": "${capture}.spec.ts,${capture}.mock.ts"
|
||||
"*.ts": "${capture}.spec.ts,${capture}.mock.ts",
|
||||
"package.json": "package-lock.json, yarn.lock, pnpm-lock.yaml, bun.lockb, bun.lock, pnpm-workspace.yaml, .pnpmfile.cjs"
|
||||
},
|
||||
"svelte.enable-ts-plugin": true,
|
||||
"typescript.preferences.importModuleSpecifier": "non-relative"
|
||||
|
||||
77
Makefile
@@ -8,7 +8,10 @@ dev-update:
|
||||
@trap 'make dev-down' EXIT; COMPOSE_BAKE=true docker compose -f ./docker/docker-compose.dev.yml up --build -V --remove-orphans
|
||||
|
||||
dev-scale:
|
||||
@trap 'make dev-down' EXIT; COMPOSE_BAKE=true docker compose -f ./docker/docker-compose.dev.yml up --build -V --scale immich-server=3 --remove-orphans
|
||||
@trap 'make dev-down' EXIT; COMPOSE_BAKE=true docker compose -f ./docker/docker-compose.dev.yml up --build -V --scale immich-server=3 --remove-orphans
|
||||
|
||||
dev-docs:
|
||||
npm --prefix docs run start
|
||||
|
||||
.PHONY: e2e
|
||||
e2e:
|
||||
@@ -40,7 +43,7 @@ open-api-typescript:
|
||||
cd ./open-api && bash ./bin/generate-open-api.sh typescript
|
||||
|
||||
sql:
|
||||
npm --prefix server run sync:sql
|
||||
pnpm --filter immich run sync:sql
|
||||
|
||||
attach-server:
|
||||
docker exec -it docker_immich-server_1 sh
|
||||
@@ -50,31 +53,40 @@ renovate:
|
||||
|
||||
MODULES = e2e server web cli sdk docs .github
|
||||
|
||||
# directory to package name mapping function
|
||||
# cli = @immich/cli
|
||||
# docs = documentation
|
||||
# e2e = immich-e2e
|
||||
# open-api/typescript-sdk = @immich/sdk
|
||||
# server = immich
|
||||
# web = immich-web
|
||||
map-package = $(subst sdk,@immich/sdk,$(subst cli,@immich/cli,$(subst docs,documentation,$(subst e2e,immich-e2e,$(subst server,immich,$(subst web,immich-web,$1))))))
|
||||
|
||||
audit-%:
|
||||
npm --prefix $(subst sdk,open-api/typescript-sdk,$*) audit fix
|
||||
pnpm --filter $(call map-package,$*) audit fix
|
||||
install-%:
|
||||
npm --prefix $(subst sdk,open-api/typescript-sdk,$*) i
|
||||
ci-%:
|
||||
npm --prefix $(subst sdk,open-api/typescript-sdk,$*) ci
|
||||
pnpm --filter $(call map-package,$*) install $(if $(FROZEN),--frozen-lockfile) $(if $(OFFLINE),--offline)
|
||||
build-cli: build-sdk
|
||||
build-web: build-sdk
|
||||
build-%: install-%
|
||||
npm --prefix $(subst sdk,open-api/typescript-sdk,$*) run build
|
||||
pnpm --filter $(call map-package,$*) run build
|
||||
format-%:
|
||||
npm --prefix $* run format:fix
|
||||
pnpm --filter $(call map-package,$*) run format:fix
|
||||
lint-%:
|
||||
npm --prefix $* run lint:fix
|
||||
pnpm --filter $(call map-package,$*) run lint:fix
|
||||
lint-web:
|
||||
pnpm --filter $(call map-package,$*) run lint:p
|
||||
check-%:
|
||||
npm --prefix $* run check
|
||||
pnpm --filter $(call map-package,$*) run check
|
||||
check-web:
|
||||
npm --prefix web run check:typescript
|
||||
npm --prefix web run check:svelte
|
||||
pnpm --filter immich-web run check:typescript
|
||||
pnpm --filter immich-web run check:svelte
|
||||
test-%:
|
||||
npm --prefix $* run test
|
||||
pnpm --filter $(call map-package,$*) run test
|
||||
test-e2e:
|
||||
docker compose -f ./e2e/docker-compose.yml build
|
||||
npm --prefix e2e run test
|
||||
npm --prefix e2e run test:web
|
||||
pnpm --filter immich-e2e run test
|
||||
pnpm --filter immich-e2e run test:web
|
||||
test-medium:
|
||||
docker run \
|
||||
--rm \
|
||||
@@ -84,25 +96,36 @@ test-medium:
|
||||
-v ./server/tsconfig.json:/usr/src/app/tsconfig.json \
|
||||
-e NODE_ENV=development \
|
||||
immich-server:latest \
|
||||
-c "npm ci && npm run test:medium -- --run"
|
||||
-c "pnpm test:medium -- --run"
|
||||
test-medium-dev:
|
||||
docker exec -it immich_server /bin/sh -c "npm run test:medium"
|
||||
docker exec -it immich_server /bin/sh -c "pnpm run test:medium"
|
||||
|
||||
build-all: $(foreach M,$(filter-out e2e .github,$(MODULES)),build-$M) ;
|
||||
install-all: $(foreach M,$(MODULES),install-$M) ;
|
||||
ci-all: $(foreach M,$(filter-out .github,$(MODULES)),ci-$M) ;
|
||||
check-all: $(foreach M,$(filter-out sdk cli docs .github,$(MODULES)),check-$M) ;
|
||||
lint-all: $(foreach M,$(filter-out sdk docs .github,$(MODULES)),lint-$M) ;
|
||||
format-all: $(foreach M,$(filter-out sdk,$(MODULES)),format-$M) ;
|
||||
audit-all: $(foreach M,$(MODULES),audit-$M) ;
|
||||
hygiene-all: lint-all format-all check-all sql audit-all;
|
||||
test-all: $(foreach M,$(filter-out sdk docs .github,$(MODULES)),test-$M) ;
|
||||
install-all:
|
||||
pnpm -r --filter '!documentation' install
|
||||
|
||||
build-all: $(foreach M,$(filter-out e2e docs .github,$(MODULES)),build-$M) ;
|
||||
|
||||
check-all:
|
||||
pnpm -r --filter '!documentation' run "/^(check|check\:svelte|check\:typescript)$/"
|
||||
lint-all:
|
||||
pnpm -r --filter '!documentation' run lint:fix
|
||||
format-all:
|
||||
pnpm -r --filter '!documentation' run format:fix
|
||||
audit-all:
|
||||
pnpm -r --filter '!documentation' audit fix
|
||||
hygiene-all: audit-all
|
||||
pnpm -r --filter '!documentation' run "/(format:fix|check|check:svelte|check:typescript|sql)/"
|
||||
|
||||
test-all:
|
||||
pnpm -r --filter '!documentation' run "/^test/"
|
||||
|
||||
clean:
|
||||
find . -name "node_modules" -type d -prune -exec rm -rf {} +
|
||||
find . -name "dist" -type d -prune -exec rm -rf '{}' +
|
||||
find . -name "build" -type d -prune -exec rm -rf '{}' +
|
||||
find . -name "svelte-kit" -type d -prune -exec rm -rf '{}' +
|
||||
find . -name ".svelte-kit" -type d -prune -exec rm -rf '{}' +
|
||||
find . -name "coverage" -type d -prune -exec rm -rf '{}' +
|
||||
find . -name ".pnpm-store" -type d -prune -exec rm -rf '{}' +
|
||||
command -v docker >/dev/null 2>&1 && docker compose -f ./docker/docker-compose.dev.yml rm -v -f || true
|
||||
command -v docker >/dev/null 2>&1 && docker compose -f ./e2e/docker-compose.yml rm -v -f || true
|
||||
|
||||
|
||||
@@ -1 +1 @@
|
||||
22.17.1
|
||||
22.18.0
|
||||
|
||||
@@ -1,19 +1,14 @@
|
||||
FROM node:22.16.0-alpine3.20@sha256:2289fb1fba0f4633b08ec47b94a89c7e20b829fc5679f9b7b298eaa2f1ed8b7e AS core
|
||||
|
||||
WORKDIR /usr/src/open-api/typescript-sdk
|
||||
COPY open-api/typescript-sdk/package*.json open-api/typescript-sdk/tsconfig*.json ./
|
||||
RUN npm ci
|
||||
COPY open-api/typescript-sdk/ ./
|
||||
RUN npm run build
|
||||
|
||||
WORKDIR /usr/src/app
|
||||
|
||||
COPY cli/package.json cli/package-lock.json ./
|
||||
RUN npm ci
|
||||
|
||||
COPY cli .
|
||||
RUN npm run build
|
||||
COPY package* pnpm* .pnpmfile.cjs ./
|
||||
COPY ./cli ./cli/
|
||||
COPY ./open-api/typescript-sdk ./open-api/typescript-sdk/
|
||||
RUN corepack enable pnpm && \
|
||||
pnpm install --filter @immich/sdk --filter @immich/cli --frozen-lockfile && \
|
||||
pnpm --filter @immich/sdk build && \
|
||||
pnpm --filter @immich/cli build
|
||||
|
||||
WORKDIR /import
|
||||
|
||||
ENTRYPOINT ["node", "/usr/src/app/dist"]
|
||||
ENTRYPOINT ["node", "/usr/src/app/cli/dist"]
|
||||
|
||||
4632
cli/package-lock.json
generated
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@immich/cli",
|
||||
"version": "2.2.73",
|
||||
"version": "2.2.81",
|
||||
"description": "Command Line Interface (CLI) for Immich",
|
||||
"type": "module",
|
||||
"exports": "./dist/index.js",
|
||||
@@ -21,7 +21,7 @@
|
||||
"@types/lodash-es": "^4.17.12",
|
||||
"@types/micromatch": "^4.0.9",
|
||||
"@types/mock-fs": "^4.13.1",
|
||||
"@types/node": "^22.16.5",
|
||||
"@types/node": "^22.17.1",
|
||||
"@vitest/coverage-v8": "^3.0.0",
|
||||
"byte-size": "^9.0.0",
|
||||
"cli-progress": "^3.12.0",
|
||||
@@ -29,7 +29,7 @@
|
||||
"eslint": "^9.14.0",
|
||||
"eslint-config-prettier": "^10.1.8",
|
||||
"eslint-plugin-prettier": "^5.1.3",
|
||||
"eslint-plugin-unicorn": "^59.0.0",
|
||||
"eslint-plugin-unicorn": "^60.0.0",
|
||||
"globals": "^16.0.0",
|
||||
"mock-fs": "^5.2.0",
|
||||
"prettier": "^3.2.5",
|
||||
@@ -69,6 +69,6 @@
|
||||
"micromatch": "^4.0.8"
|
||||
},
|
||||
"volta": {
|
||||
"node": "22.17.1"
|
||||
"node": "22.18.0"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -21,17 +21,16 @@ services:
|
||||
# extends:
|
||||
# file: hwaccel.transcoding.yml
|
||||
# service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
|
||||
user: '${UID:-1000}:${GID:-1000}'
|
||||
build:
|
||||
context: ../
|
||||
dockerfile: server/Dockerfile
|
||||
target: dev
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- ../server:/usr/src/app/server
|
||||
- ../open-api:/usr/src/app/open-api
|
||||
- ..:/usr/src/app
|
||||
- ${UPLOAD_LOCATION}/photos:/data
|
||||
- ${UPLOAD_LOCATION}/photos/upload:/data/upload
|
||||
- /usr/src/app/server/node_modules
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
env_file:
|
||||
- .env
|
||||
@@ -58,8 +57,12 @@ services:
|
||||
- 9231:9231
|
||||
- 2283:2283
|
||||
depends_on:
|
||||
- redis
|
||||
- database
|
||||
redis:
|
||||
condition: service_started
|
||||
database:
|
||||
condition: service_started
|
||||
init:
|
||||
condition: service_completed_successfully
|
||||
healthcheck:
|
||||
disable: false
|
||||
|
||||
@@ -68,9 +71,11 @@ services:
|
||||
image: immich-web-dev:latest
|
||||
# Needed for rootless docker setup, see https://github.com/moby/moby/issues/45919
|
||||
# user: 0:0
|
||||
user: '${UID:-1000}:${GID:-1000}'
|
||||
build:
|
||||
context: ../
|
||||
dockerfile: web/Dockerfile
|
||||
dockerfile: server/Dockerfile
|
||||
target: dev
|
||||
command: ['immich-web']
|
||||
env_file:
|
||||
- .env
|
||||
@@ -78,18 +83,17 @@ services:
|
||||
- 3000:3000
|
||||
- 24678:24678
|
||||
volumes:
|
||||
- ../web:/usr/src/app/web
|
||||
- ../i18n:/usr/src/app/i18n
|
||||
- ../open-api/:/usr/src/app/open-api/
|
||||
# - ../../ui:/usr/ui
|
||||
- /usr/src/app/web/node_modules
|
||||
- ..:/usr/src/app
|
||||
ulimits:
|
||||
nofile:
|
||||
soft: 1048576
|
||||
hard: 1048576
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
- immich-server
|
||||
immich-server:
|
||||
condition: service_started
|
||||
init:
|
||||
condition: service_completed_successfully
|
||||
|
||||
immich-machine-learning:
|
||||
container_name: immich_machine_learning
|
||||
@@ -117,7 +121,7 @@ services:
|
||||
|
||||
redis:
|
||||
container_name: immich_redis
|
||||
image: docker.io/valkey/valkey:8-bookworm@sha256:facc1d2c3462975c34e10fccb167bfa92b0e0dbd992fc282c29a61c3243afb11
|
||||
image: docker.io/valkey/valkey:8-bookworm@sha256:a137a2b60aca1a75130022d6bb96af423fefae4eb55faf395732db3544803280
|
||||
healthcheck:
|
||||
test: redis-cli ping || exit 1
|
||||
|
||||
@@ -157,6 +161,14 @@ services:
|
||||
# volumes:
|
||||
# - grafana-data:/var/lib/grafana
|
||||
|
||||
init:
|
||||
container_name: init
|
||||
image: busybox
|
||||
env_file:
|
||||
- .env
|
||||
user: 0:0
|
||||
command: sh -c 'for path in /usr/src/app/.pnpm-store /usr/src/app/server/node_modules /usr/src/app/.github/node_modules /usr/src/app/cli/node_modules /usr/src/app/docs/node_modules /usr/src/app/e2e/node_modules /usr/src/app/open-api/typescript-sdk/node_modules /usr/src/app/web/.svelte-kit /usr/src/app/web/coverage /usr/src/app/node_modules /usr/src/app/web/node_modules; do [ -e "$$path" ] && chown -R ${UID:-1000}:${GID:-1000} "$$path" || true; done'
|
||||
|
||||
volumes:
|
||||
model-cache:
|
||||
prometheus-data:
|
||||
|
||||
@@ -56,7 +56,7 @@ services:
|
||||
|
||||
redis:
|
||||
container_name: immich_redis
|
||||
image: docker.io/valkey/valkey:8-bookworm@sha256:facc1d2c3462975c34e10fccb167bfa92b0e0dbd992fc282c29a61c3243afb11
|
||||
image: docker.io/valkey/valkey:8-bookworm@sha256:a137a2b60aca1a75130022d6bb96af423fefae4eb55faf395732db3544803280
|
||||
healthcheck:
|
||||
test: redis-cli ping || exit 1
|
||||
restart: always
|
||||
@@ -95,7 +95,7 @@ services:
|
||||
command: ['./run.sh', '-disable-reporting']
|
||||
ports:
|
||||
- 3000:3000
|
||||
image: grafana/grafana:12.0.2-ubuntu@sha256:0512d81cdeaaff0e370a9aa66027b465d1f1f04379c3a9c801a905fabbdbc7a5
|
||||
image: grafana/grafana:12.1.1-ubuntu@sha256:d1da838234ff2de93e0065ee1bf0e66d38f948dcc5d718c25fa6237e14b4424a
|
||||
volumes:
|
||||
- grafana-data:/var/lib/grafana
|
||||
|
||||
|
||||
@@ -49,7 +49,7 @@ services:
|
||||
|
||||
redis:
|
||||
container_name: immich_redis
|
||||
image: docker.io/valkey/valkey:8-bookworm@sha256:facc1d2c3462975c34e10fccb167bfa92b0e0dbd992fc282c29a61c3243afb11
|
||||
image: docker.io/valkey/valkey:8-bookworm@sha256:a137a2b60aca1a75130022d6bb96af423fefae4eb55faf395732db3544803280
|
||||
healthcheck:
|
||||
test: redis-cli ping || exit 1
|
||||
restart: always
|
||||
|
||||
4
docs/.gitignore
vendored
@@ -18,4 +18,6 @@
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
yarn.lock
|
||||
yarn.lock
|
||||
|
||||
/static/openapi.json
|
||||
|
||||
@@ -1 +1 @@
|
||||
22.17.1
|
||||
22.18.0
|
||||
|
||||
@@ -5,13 +5,13 @@ This website is built using [Docusaurus](https://docusaurus.io/), a modern stati
|
||||
### Installation
|
||||
|
||||
```
|
||||
$ npm install
|
||||
$ pnpm install
|
||||
```
|
||||
|
||||
### Local Development
|
||||
|
||||
```
|
||||
$ npm run start
|
||||
$ pnpm run start
|
||||
```
|
||||
|
||||
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
|
||||
@@ -19,7 +19,7 @@ This command starts a local development server and opens up a browser window. Mo
|
||||
### Build
|
||||
|
||||
```
|
||||
$ npm run build
|
||||
$ pnpm run build
|
||||
```
|
||||
|
||||
This command generates static content into the `build` directory and can be served using any static contents hosting service.
|
||||
@@ -29,13 +29,13 @@ This command generates static content into the `build` directory and can be serv
|
||||
Using SSH:
|
||||
|
||||
```
|
||||
$ USE_SSH=true npm run deploy
|
||||
$ USE_SSH=true pnpm run deploy
|
||||
```
|
||||
|
||||
Not using SSH:
|
||||
|
||||
```
|
||||
$ GIT_USER=<Your GitHub username> npm run deploy
|
||||
$ GIT_USER=<Your GitHub username> pnpm run deploy
|
||||
```
|
||||
|
||||
If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch.
|
||||
|
||||
@@ -64,7 +64,7 @@ Once you have a new OAuth client application configured, Immich can be configure
|
||||
| Storage Label Claim | string | preferred_username | Claim mapping for the user's storage label**¹** |
|
||||
| Role Claim | string | immich_role | Claim mapping for the user's role. (should return "user" or "admin")**¹** |
|
||||
| Storage Quota Claim | string | immich_quota | Claim mapping for the user's storage**¹** |
|
||||
| Default Storage Quota (GiB) | number | 0 | Default quota for user without storage quota claim (Enter 0 for unlimited quota) |
|
||||
| Default Storage Quota (GiB) | number | 0 | Default quota for user without storage quota claim (empty for unlimited quota) |
|
||||
| Button Text | string | Login with OAuth | Text for the OAuth button on the web |
|
||||
| Auto Register | boolean | true | When true, will automatically register a user the first time they sign in |
|
||||
| [Auto Launch](#auto-launch) | boolean | false | When true, will skip the login page and automatically start the OAuth login process |
|
||||
@@ -106,6 +106,89 @@ Immich has a route (`/api/oauth/mobile-redirect`) that is already configured to
|
||||
|
||||
## Example Configuration
|
||||
|
||||
<details>
|
||||
<summary>Authelia Example</summary>
|
||||
|
||||
### Authelia Example
|
||||
|
||||
Here's an example of OAuth configured for Authelia:
|
||||
|
||||
This assumes there exist an attribute `immichquota` in the user schema, which is used to set the user's storage quota in Immich.
|
||||
The configuration concerning the quota is optional.
|
||||
|
||||
```yaml
|
||||
authentication_backend:
|
||||
ldap:
|
||||
# The LDAP server configuration goes here.
|
||||
# See: https://www.authelia.com/c/ldap
|
||||
attributes:
|
||||
extra:
|
||||
immichquota: # The attribute name from LDAP
|
||||
name: 'immich_quota'
|
||||
multi_valued: false
|
||||
value_type: 'integer'
|
||||
identity_providers:
|
||||
oidc:
|
||||
## The other portions of the mandatory OpenID Connect 1.0 configuration go here.
|
||||
## See: https://www.authelia.com/c/oidc
|
||||
claims_policies:
|
||||
immich_policy:
|
||||
custom_claims:
|
||||
immich_quota:
|
||||
attribute: 'immich_quota'
|
||||
scopes:
|
||||
immich_scope:
|
||||
claims:
|
||||
- 'immich_quota'
|
||||
|
||||
clients:
|
||||
- client_id: 'immich'
|
||||
client_name: 'Immich'
|
||||
# https://www.authelia.com/integration/openid-connect/frequently-asked-questions/#how-do-i-generate-a-client-identifier-or-client-secret
|
||||
client_secret: $pbkdf2-sha512$310000$c8p78n7pUMln0jzvd4aK4Q$JNRBzwAo0ek5qKn50cFzzvE9RXV88h1wJn5KGiHrD0YKtZaR/nCb2CJPOsKaPK0hjf.9yHxzQGZziziccp6Yng'
|
||||
public: false
|
||||
require_pkce: false
|
||||
redirect_uris:
|
||||
- 'https://example.immich.app/auth/login'
|
||||
- 'https://example.immich.app/user-settings'
|
||||
- 'app.immich:///oauth-callback'
|
||||
scopes:
|
||||
- 'openid'
|
||||
- 'profile'
|
||||
- 'email'
|
||||
- 'immich_scope'
|
||||
claims_policy: 'immich_policy'
|
||||
response_types:
|
||||
- 'code'
|
||||
grant_types:
|
||||
- 'authorization_code'
|
||||
id_token_signed_response_alg: 'RS256'
|
||||
userinfo_signed_response_alg: 'RS256'
|
||||
token_endpoint_auth_method: 'client_secret_post'
|
||||
```
|
||||
|
||||
Configuration of OAuth in Immich System Settings
|
||||
|
||||
| Setting | Value |
|
||||
| ---------------------------------- | ------------------------------------------------------------------- |
|
||||
| Issuer URL | `https://example.immich.app/.well-known/openid-configuration` |
|
||||
| Client ID | immich |
|
||||
| Client Secret | 0v89FXkQOWO\***\*\*\*\*\***\*\*\***\*\*\*\*\***mprbvXD549HH6s1iw... |
|
||||
| Token Endpoint Auth Method | client_secret_post |
|
||||
| Scope | openid email profile immich_scope |
|
||||
| ID Token Signed Response Algorithm | RS256 |
|
||||
| Userinfo Signed Response Algorithm | RS256 |
|
||||
| Storage Label Claim | uid |
|
||||
| Storage Quota Claim | immich_quota |
|
||||
| Default Storage Quota (GiB) | 0 (empty for unlimited quota) |
|
||||
| Button Text | Sign in with Authelia (optional) |
|
||||
| Auto Register | Enabled (optional) |
|
||||
| Auto Launch | Enabled (optional) |
|
||||
| Mobile Redirect URI Override | Disable |
|
||||
| Mobile Redirect URI | |
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>Authentik Example</summary>
|
||||
|
||||
@@ -128,7 +211,7 @@ Configuration of OAuth in Immich System Settings
|
||||
| Signing Algorithm | RS256 |
|
||||
| Storage Label Claim | preferred_username |
|
||||
| Storage Quota Claim | immich_quota |
|
||||
| Default Storage Quota (GiB) | 0 (0 for unlimited quota) |
|
||||
| Default Storage Quota (GiB) | 0 (empty for unlimited quota) |
|
||||
| Button Text | Sign in with Authentik (optional) |
|
||||
| Auto Register | Enabled (optional) |
|
||||
| Auto Launch | Enabled (optional) |
|
||||
@@ -159,7 +242,7 @@ Configuration of OAuth in Immich System Settings
|
||||
| Signing Algorithm | RS256 |
|
||||
| Storage Label Claim | preferred_username |
|
||||
| Storage Quota Claim | immich_quota |
|
||||
| Default Storage Quota (GiB) | 0 (0 for unlimited quota) |
|
||||
| Default Storage Quota (GiB) | 0 (empty for unlimited quota) |
|
||||
| Button Text | Sign in with Google (optional) |
|
||||
| Auto Register | Enabled (optional) |
|
||||
| Auto Launch | Enabled |
|
||||
|
||||
@@ -2,10 +2,6 @@
|
||||
|
||||
Users can deploy a custom reverse proxy that forwards requests to Immich. This way, the reverse proxy can handle TLS termination, load balancing, or other advanced features. All reverse proxies between Immich and the user must forward all headers and set the `Host`, `X-Real-IP`, `X-Forwarded-Proto` and `X-Forwarded-For` headers to their appropriate values. Additionally, your reverse proxy should allow for big enough uploads. By following these practices, you ensure that all custom reverse proxies are fully compatible with Immich.
|
||||
|
||||
:::note
|
||||
The Repair page can take a long time to load. To avoid server timeouts or errors, we recommend specifying a timeout of at least 10 minutes on your proxy server.
|
||||
:::
|
||||
|
||||
:::caution
|
||||
Immich does not support being served on a sub-path such as `location /immich {`. It has to be served on the root path of a (sub)domain.
|
||||
:::
|
||||
|
||||
@@ -5,7 +5,7 @@ After making any changes in the `server/src/schema`, a database migration need t
|
||||
1. Run the command
|
||||
|
||||
```bash
|
||||
npm run migrations:generate <migration-name>
|
||||
pnpm run migrations:generate <migration-name>
|
||||
```
|
||||
|
||||
2. Check if the migration file makes sense.
|
||||
|
||||
@@ -204,8 +204,8 @@ When the Dev Container starts, it automatically:
|
||||
|
||||
1. **Runs post-create script** (`container-server-post-create.sh`):
|
||||
- Adjusts file permissions for the `node` user
|
||||
- Installs dependencies: `npm install` in all packages
|
||||
- Builds TypeScript SDK: `npm run build` in `open-api/typescript-sdk`
|
||||
- Installs dependencies: `pnpm install` in all packages
|
||||
- Builds TypeScript SDK: `pnpm run build` in `open-api/typescript-sdk`
|
||||
|
||||
2. **Starts development servers** via VS Code tasks:
|
||||
- `Immich API Server (Nest)` - API server with hot-reloading on port 2283
|
||||
@@ -243,7 +243,7 @@ To connect the mobile app to your Dev Container:
|
||||
|
||||
- **Server code** (`/server`): Changes trigger automatic restart
|
||||
- **Web code** (`/web`): Changes trigger hot module replacement
|
||||
- **Database migrations**: Run `npm run sync:sql` in the server directory
|
||||
- **Database migrations**: Run `pnpm run sync:sql` in the server directory
|
||||
- **API changes**: Regenerate TypeScript SDK with `make open-api`
|
||||
|
||||
## Testing
|
||||
@@ -273,19 +273,19 @@ make test-medium-dev # End-to-end tests
|
||||
```bash
|
||||
# Server tests
|
||||
cd /workspaces/immich/server
|
||||
npm test # Run all tests
|
||||
npm run test:watch # Watch mode
|
||||
npm run test:cov # Coverage report
|
||||
pnpm test # Run all tests
|
||||
pnpm run test:watch # Watch mode
|
||||
pnpm run test:cov # Coverage report
|
||||
|
||||
# Web tests
|
||||
cd /workspaces/immich/web
|
||||
npm test # Run all tests
|
||||
npm run test:watch # Watch mode
|
||||
pnpm test # Run all tests
|
||||
pnpm run test:watch # Watch mode
|
||||
|
||||
# E2E tests
|
||||
cd /workspaces/immich/e2e
|
||||
npm run test # Run API tests
|
||||
npm run test:web # Run web UI tests
|
||||
pnpm run test # Run API tests
|
||||
pnpm run test:web # Run web UI tests
|
||||
```
|
||||
|
||||
### Code Quality Commands
|
||||
|
||||
@@ -8,34 +8,34 @@ When contributing code through a pull request, please check the following:
|
||||
|
||||
## Web Checks
|
||||
|
||||
- [ ] `npm run lint` (linting via ESLint)
|
||||
- [ ] `npm run format` (formatting via Prettier)
|
||||
- [ ] `npm run check:svelte` (Type checking via SvelteKit)
|
||||
- [ ] `npm run check:typescript` (check typescript)
|
||||
- [ ] `npm test` (unit tests)
|
||||
- [ ] `pnpm run lint` (linting via ESLint)
|
||||
- [ ] `pnpm run format` (formatting via Prettier)
|
||||
- [ ] `pnpm run check:svelte` (Type checking via SvelteKit)
|
||||
- [ ] `pnpm run check:typescript` (check typescript)
|
||||
- [ ] `pnpm test` (unit tests)
|
||||
|
||||
## Documentation
|
||||
|
||||
- [ ] `npm run format` (formatting via Prettier)
|
||||
- [ ] `pnpm run format` (formatting via Prettier)
|
||||
- [ ] Update the `_redirects` file if you have renamed a page or removed it from the documentation.
|
||||
|
||||
:::tip AIO
|
||||
Run all web checks with `npm run check:all`
|
||||
Run all web checks with `pnpm run check:all`
|
||||
:::
|
||||
|
||||
## Server Checks
|
||||
|
||||
- [ ] `npm run lint` (linting via ESLint)
|
||||
- [ ] `npm run format` (formatting via Prettier)
|
||||
- [ ] `npm run check` (Type checking via `tsc`)
|
||||
- [ ] `npm test` (unit tests)
|
||||
- [ ] `pnpm run lint` (linting via ESLint)
|
||||
- [ ] `pnpm run format` (formatting via Prettier)
|
||||
- [ ] `pnpm run check` (Type checking via `tsc`)
|
||||
- [ ] `pnpm test` (unit tests)
|
||||
|
||||
:::tip AIO
|
||||
Run all server checks with `npm run check:all`
|
||||
Run all server checks with `pnpm run check:all`
|
||||
:::
|
||||
|
||||
:::info Auto Fix
|
||||
You can use `npm run __:fix` to potentially correct some issues automatically for `npm run format` and `lint`.
|
||||
You can use `pnpm run __:fix` to potentially correct some issues automatically for `pnpm run format` and `lint`.
|
||||
:::
|
||||
|
||||
## Mobile Checks
|
||||
|
||||
@@ -54,20 +54,20 @@ You can access the web from `http://your-machine-ip:3000` or `http://localhost:3
|
||||
|
||||
If you only want to do web development connected to an existing, remote backend, follow these steps:
|
||||
|
||||
1. Build the Immich SDK - `cd open-api/typescript-sdk && npm i && npm run build && cd -`
|
||||
1. Build the Immich SDK - `cd open-api/typescript-sdk && pnpm i && pnpm run build && cd -`
|
||||
2. Enter the web directory - `cd web/`
|
||||
3. Install web dependencies - `npm i`
|
||||
3. Install web dependencies - `pnpm i`
|
||||
4. Start the web development server
|
||||
|
||||
```bash
|
||||
IMMICH_SERVER_URL=https://demo.immich.app/ npm run dev
|
||||
IMMICH_SERVER_URL=https://demo.immich.app/ pnpm run dev
|
||||
```
|
||||
|
||||
If you're using PowerShell on Windows you may need to set the env var separately like so:
|
||||
|
||||
```powershell
|
||||
$env:IMMICH_SERVER_URL = "https://demo.immich.app/"
|
||||
npm run dev
|
||||
pnpm run dev
|
||||
```
|
||||
|
||||
#### `@immich/ui`
|
||||
@@ -75,12 +75,12 @@ npm run dev
|
||||
To see local changes to `@immich/ui` in Immich, do the following:
|
||||
|
||||
1. Install `@immich/ui` as a sibling to `immich/`, for example `/home/user/immich` and `/home/user/ui`
|
||||
2. Build the `@immich/ui` project via `npm run build`
|
||||
2. Build the `@immich/ui` project via `pnpm run build`
|
||||
3. Uncomment the corresponding volume in web service of the `docker/docker-compose.dev.yaml` file (`../../ui:/usr/ui`)
|
||||
4. Uncomment the corresponding alias in the `web/vite.config.js` file (`'@immich/ui': path.resolve(\_\_dirname, '../../ui')`)
|
||||
5. Uncomment the import statement in `web/src/app.css` file `@import '/usr/ui/dist/theme/default.css';` and comment out `@import '@immich/ui/theme/default.css';`
|
||||
6. Start up the stack via `make dev`
|
||||
7. After making changes in `@immich/ui`, rebuild it (`npm run build`)
|
||||
7. After making changes in `@immich/ui`, rebuild it (`pnpm run build`)
|
||||
|
||||
### Mobile app
|
||||
|
||||
|
||||
@@ -4,8 +4,8 @@
|
||||
|
||||
### Unit tests
|
||||
|
||||
Unit are run by calling `npm run test` from the `server/` directory.
|
||||
You need to run `npm install` (in `server/`) before _once_.
|
||||
Unit are run by calling `pnpm run test` from the `server/` directory.
|
||||
You need to run `pnpm install` (in `server/`) before _once_.
|
||||
|
||||
### End to end tests
|
||||
|
||||
@@ -17,14 +17,14 @@ make e2e
|
||||
|
||||
Before you can run the tests, you need to run the following commands _once_:
|
||||
|
||||
- `npm install` (in `e2e/`)
|
||||
- `pnpm install` (in `e2e/`)
|
||||
- `make open-api` (in the project root `/`)
|
||||
|
||||
Once the test environment is running, the e2e tests can be run via:
|
||||
|
||||
```bash
|
||||
cd e2e/
|
||||
npm test
|
||||
pnpm test
|
||||
```
|
||||
|
||||
The tests check various things including:
|
||||
|
||||
BIN
docs/docs/install/img/truenas/truenas00.webp
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
|
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 4.7 KiB |
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 48 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
BIN
docs/docs/install/img/truenas/truenas04.webp
Normal file
|
After Width: | Height: | Size: 101 KiB |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
BIN
docs/docs/install/img/truenas/truenas06.webp
Normal file
|
After Width: | Height: | Size: 5.1 KiB |
BIN
docs/docs/install/img/truenas/truenas07.webp
Normal file
|
After Width: | Height: | Size: 49 KiB |
BIN
docs/docs/install/img/truenas/truenas08.webp
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
docs/docs/install/img/truenas/truenas09.webp
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
docs/docs/install/img/truenas/truenas10.webp
Normal file
|
After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 4.0 KiB After Width: | Height: | Size: 4.0 KiB |
|
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 35 KiB |
|
Before Width: | Height: | Size: 8.9 KiB |
|
Before Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 9.7 KiB |
|
Before Width: | Height: | Size: 6.7 KiB |
|
Before Width: | Height: | Size: 4.8 KiB |
@@ -2,6 +2,9 @@
|
||||
sidebar_position: 80
|
||||
---
|
||||
|
||||
import Tabs from '@theme/Tabs';
|
||||
import TabItem from '@theme/TabItem';
|
||||
|
||||
# TrueNAS [Community]
|
||||
|
||||
:::note
|
||||
@@ -9,211 +12,324 @@ This is a community contribution and not officially supported by the Immich team
|
||||
|
||||
Community support can be found in the dedicated channel on the [Discord Server](https://discord.immich.app/).
|
||||
|
||||
**Please report app issues to the corresponding [Github Repository](https://github.com/truenas/apps/tree/master/trains/community/immich).**
|
||||
**Please report app issues to the corresponding [GitHub Repository](https://github.com/truenas/apps/tree/master/trains/community/immich).**
|
||||
:::
|
||||
|
||||
:::warning
|
||||
This guide covers the installation of Immich on TrueNAS Community Edition 24.10.2.2 (Electric Eel) and later.
|
||||
|
||||
We recommend keeping TrueNAS Community Edition and Immich relatively up to date with the latest versions to avoid any issues.
|
||||
|
||||
If you are using an older version of TrueNAS, we ask that you upgrade to the latest version before installing Immich. Check the [TrueNAS Community Edition Release Notes](https://www.truenas.com/docs/softwarereleases/) for more information on breaking changes, new features, and how to upgrade your system.
|
||||
:::
|
||||
|
||||
Immich can easily be installed on TrueNAS Community Edition via the **Community** train application.
|
||||
Consider reviewing the TrueNAS [Apps resources](https://apps.truenas.com/getting-started/) if you have not previously configured applications on your system.
|
||||
|
||||
TrueNAS Community Edition makes installing and updating Immich easy, but you must use the Immich web portal and mobile app to configure accounts and access libraries.
|
||||
|
||||
## First Steps
|
||||
|
||||
The Immich app in TrueNAS Community Edition installs, completes the initial configuration, then starts the Immich web portal.
|
||||
When updates become available, TrueNAS alerts and provides easy updates.
|
||||
|
||||
Before installing the Immich app in TrueNAS, review the [Environment Variables](#environment-variables) documentation to see if you want to configure any during installation.
|
||||
You may also configure environment variables at any time after deploying the application.
|
||||
|
||||
### Setting up Storage Datasets
|
||||
|
||||
Before beginning app installation, [create the datasets](https://www.truenas.com/docs/scale/scaletutorials/storage/datasets/datasetsscale/) to use in the **Storage Configuration** section during installation.
|
||||
Immich requires seven datasets: `library`, `upload`, `thumbs`, `profile`, `video`, `backups`, and `pgData`.
|
||||
You can organize these as one parent with seven child datasets, for example `/mnt/tank/immich/library`, `/mnt/tank/immich/upload`, and so on.
|
||||
|
||||
In TrueNAS, Immich requires 2 datasets for the application to function correctly: `data` and `pgData`. You can set the datasets to any names to match your naming conventions or preferences.
|
||||
You can organize these as one parent with two child datasets, for example `/mnt/tank/immich/data` and `/mnt/tank/immich/pgData`.
|
||||
|
||||
<img
|
||||
src={require('./img/truenas12.webp').default}
|
||||
width="30%"
|
||||
src={require('./img/truenas/truenas00.webp').default}
|
||||
width="40%"
|
||||
alt="Immich App Widget"
|
||||
className="border rounded-xl"
|
||||
/>
|
||||
|
||||
:::info Permissions
|
||||
The **pgData** dataset must be owned by the user `netdata` (UID 999) for postgres to start. The other datasets must be owned by the user `root` (UID 0) or a group that includes the user `root` (UID 0) for immich to have the necessary permissions.
|
||||
:::info Datasets Permissions
|
||||
|
||||
If the **library** dataset uses ACL it must have [ACL mode](https://www.truenas.com/docs/core/coretutorials/storage/pools/permissions/#access-control-lists) set to `Passthrough` if you plan on using a [storage template](/docs/administration/storage-template.mdx) and the dataset is configured for network sharing (its ACL type is set to `SMB/NFSv4`). When the template is applied and files need to be moved from **upload** to **library**, Immich performs `chmod` internally and needs to be allowed to execute the command. [More info.](https://github.com/immich-app/immich/pull/13017)
|
||||
The **pgData** dataset must be owned by the user `netdata` (UID 999) for Postgres to start.
|
||||
|
||||
The `data` dataset must have given the **_modify_** permission to the user who will run Immich.
|
||||
|
||||
Since TrueNAS Community Edition 24.10.2.2 and later, Immich can be run as any user and group, the default user being `apps` (UID 568) and the default group being `apps` (GID 568). This user, either `apps` or another user you choose, must have **_modify_** permissions on the **data** dataset.
|
||||
|
||||
For an easy setup:
|
||||
|
||||
- Create the parent dataset `immich` keeping the default **Generic** preset.
|
||||
- Select `Dataset Preset` **Apps** instead of **Generic** when creating the `data` dataset. This will automatically give the correct permissions to the dataset. If you want to use another user for Immich, you can keep the **Generic** preset, but you will need to give the **_modify_** permission to that other user.
|
||||
- For the `pgData` dataset, you can keep the default preset **Generic** as permissions can be set during the installation of the Immich app (See [Storage Configuration](#storage-configuration) section).
|
||||
:::
|
||||
|
||||
:::tip
|
||||
To improve performance, Immich recommends using SSDs for the database. If you have a pool made of SSDs, you can create the `pgData` dataset on that pool.
|
||||
|
||||
Thumbnails can also be stored on the SSDs for faster access. This is an advanced option and not required for Immich to run. More information on how you can use multiple datasets to manage Immich storage in a finer-grained manner can be found in the [Advanced: Multiple Datasets for Immich Storage](#advanced-multiple-datasets-for-immich-storage) section below.
|
||||
:::
|
||||
|
||||
:::warning
|
||||
If you just created the datasets using the **Apps** preset, you can skip this warning section.
|
||||
|
||||
If the **data** dataset uses ACL it must have [ACL mode](https://www.truenas.com/docs/scale/scaletutorials/datasets/permissionsscale/) set to `Passthrough` if you plan on using a [storage template](/docs/administration/storage-template.mdx) and the dataset is configured for network sharing (its ACL type is set to `SMB/NFSv4`). When the template is applied and files need to be moved from **upload** to **library** (internal folder created by Immich within the **data** dataset), Immich performs `chmod` internally and must be allowed to execute the command. [More info.](https://github.com/immich-app/immich/pull/13017)
|
||||
|
||||
To change or verify the ACL mode, go to the **Datasets** screen, select the **library** dataset, click on the **Edit** button next to **Dataset Details**, then click on the **Advanced Options** tab, scroll down to the **ACL Mode** section, and select `Passthrough` from the dropdown menu. Click **Save** to apply the changes. If the option is greyed out, set the **ACL Type** to `SMB/NFSv4` first, then you can change the **ACL Mode** to `Passthrough`.
|
||||
:::
|
||||
|
||||
## Installing the Immich Application
|
||||
|
||||
To install the **Immich** application, go to **Apps**, click **Discover Apps**, either begin typing Immich into the search field or scroll down to locate the **Immich** application widget.
|
||||
To install the **Immich** application, go to **Apps**, click **Discover Apps**, and either begin typing Immich into the search field or scroll down to locate the **Immich** application widget.
|
||||
|
||||
<div style={{ marginBottom: '2rem', border: '1px solid #ccc', padding: '1rem', borderRadius: '8px' }}>
|
||||
|
||||
Click on the widget to open the **Immich** application details screen.
|
||||
<img
|
||||
src={require('./img/truenas01.webp').default}
|
||||
src={require('./img/truenas/truenas01.webp').default}
|
||||
width="50%"
|
||||
alt="Immich App Widget"
|
||||
className="border rounded-xl"
|
||||
/>
|
||||
|
||||
Click on the widget to open the **Immich** application details screen.
|
||||
</div>
|
||||
|
||||
<br/><br/>
|
||||
<div style={{ marginBottom: '2rem', border: '1px solid #ccc', padding: '1rem', borderRadius: '8px' }}>
|
||||
|
||||
Click **Install** to open the Immich application configuration screen.
|
||||
<img
|
||||
src={require('./img/truenas02.webp').default}
|
||||
src={require('./img/truenas/truenas02.webp').default}
|
||||
width="100%"
|
||||
alt="Immich App Details Screen"
|
||||
className="border rounded-xl"
|
||||
/>
|
||||
|
||||
Click **Install** to open the Immich application configuration screen.
|
||||
|
||||
<br/><br/>
|
||||
</div>
|
||||
|
||||
Application configuration settings are presented in several sections, each explained below.
|
||||
To find specific fields click in the **Search Input Fields** search field, scroll down to a particular section or click on the section heading on the navigation area in the upper-right corner.
|
||||
To find specific fields, click in the **Search Input Fields** search field, scroll down to a particular section, or click on the section heading on the navigation area in the upper-right corner.
|
||||
|
||||
### Application Name and Version
|
||||
|
||||
<img
|
||||
src={require('./img/truenas03.webp').default}
|
||||
src={require('./img/truenas/truenas03.webp').default}
|
||||
width="100%"
|
||||
alt="Install Immich Screen"
|
||||
className="border rounded-xl"
|
||||
className="border rounded-xl mb-4"
|
||||
/>
|
||||
|
||||
Accept the default value or enter a name in **Application Name** field.
|
||||
In most cases use the default name, but if adding a second deployment of the application you must change this name.
|
||||
Keep the default value or enter a name in the **Application Name** field.
|
||||
Change it if you’re deploying a second instance.
|
||||
|
||||
Accept the default version number in **Version**.
|
||||
When a new version becomes available, the application has an update badge.
|
||||
The **Installed Applications** screen shows the option to update applications.
|
||||
Immich version within TrueNAS catalog (Different from Immich release version).
|
||||
|
||||
### Immich Configuration
|
||||
|
||||
<img
|
||||
src={require('./img/truenas05.webp').default}
|
||||
src={require('./img/truenas/truenas04.webp').default}
|
||||
width="40%"
|
||||
alt="Configuration Settings"
|
||||
className="border rounded-xl mb-4"
|
||||
/>
|
||||
|
||||
The **Timezone** is set to the system default, which usually matches your local timezone. You can change it to another timezone if you prefer.
|
||||
|
||||
**Enable Machine Learning** is enabled by default. It allows Immich to use machine learning features such as face recognition, image search, and smart duplicate detection. Untick this option if you do not want to use these features.
|
||||
|
||||
Select the **Machine Learning Image Type** based on the hardware you have. More details here: [Hardware-Accelerated Machine Learning](/docs/features/ml-hardware-acceleration.md)
|
||||
|
||||
**Database Password** should be set to a custom value using only the characters `A-Za-z0-9`. This password is used to secure the Postgres database.
|
||||
|
||||
**Redis Password** should be set to a custom value using only the characters `A-Za-z0-9`. Preferably, use a different password from the database password.
|
||||
|
||||
Keep the **Log Level** to the default `Log` value.
|
||||
|
||||
Leave **Hugging Face Endpoint** blank. (This is used to download ML models from a different source.)
|
||||
|
||||
Set **Database Storage Type** to the type of storage (**HDD** or **SSD**) that the pool where the **pgData** dataset is located uses.
|
||||
|
||||
**Additional Environment Variables** can be left blank.
|
||||
|
||||
<details>
|
||||
<summary>Advanced users: Adding Environment Variables</summary>
|
||||
|
||||
Environment variables can be set by clicking the **Add** button and filling in the **Name** and **Value** fields.
|
||||
|
||||
<img
|
||||
src={require('./img/truenas/truenas05.webp').default}
|
||||
width="40%"
|
||||
alt="Environment Variables"
|
||||
className="border rounded-xl"
|
||||
/>
|
||||
|
||||
Accept the default value in **Timezone** or change to match your local timezone.
|
||||
**Timezone** is only used by the Immich `exiftool` microservice if it cannot be determined from the image metadata.
|
||||
These are used to add custom configuration options or to enable specific features.
|
||||
More information on available environment variables can be found in the **[environment variables documentation](/docs/install/environment-variables/)**.
|
||||
|
||||
Untick **Enable Machine Learning** if you will not use face recognition, image search, and smart duplicate detection.
|
||||
:::info
|
||||
Some environment variables are not available for the TrueNAS Community Edition app as they can be configured through GUI options in the [Edit Immich screen](#edit-app-settings).
|
||||
|
||||
Accept the default option or select the **Machine Learning Image Type** for your hardware based on the [Hardware-Accelerated Machine Learning Supported Backends](/docs/features/ml-hardware-acceleration.md#supported-backends).
|
||||
Some examples are: `IMMICH_VERSION`, `UPLOAD_LOCATION`, `DB_DATA_LOCATION`, `TZ`, `IMMICH_LOG_LEVEL`, `DB_PASSWORD`, `REDIS_PASSWORD`.
|
||||
:::
|
||||
|
||||
Immich's default is `postgres` but you should consider setting the **Database Password** to a custom value using only the characters `A-Za-z0-9`.
|
||||
</details>
|
||||
|
||||
The **Redis Password** should be set to a custom value using only the characters `A-Za-z0-9`.
|
||||
### User and Group Configuration
|
||||
|
||||
Accept the **Log Level** default of **Log**.
|
||||
Application in TrueNAS runs as a specific user and group. Immich uses the default user `apps` (UID 568) and the default group `apps` (GID 568).
|
||||
|
||||
Leave **Hugging Face Endpoint** blank. (This is for downloading ML models from a different source.)
|
||||
<img
|
||||
src={require('./img/truenas/truenas06.webp').default}
|
||||
width="40%"
|
||||
alt="User and Group Configuration"
|
||||
className="border rounded-xl"
|
||||
/>
|
||||
|
||||
Leave **Additional Environment Variables** blank or see [Environment Variables](#environment-variables) to set before installing.
|
||||
- **User ID**: Keep the default value `apps` (UID 568) or define a different one if needed.
|
||||
|
||||
- **Group ID**: Keep the default value `apps` (GID 568) or define a different one if needed.
|
||||
|
||||
:::warning
|
||||
If you change the user or group, make sure that the datasets you created for Immich data storage have the correct permissions set for that user and group as specified in the [Setting up Storage Datasets](#setting-up-storage-datasets) section above.
|
||||
:::
|
||||
|
||||
### Network Configuration
|
||||
|
||||
<img
|
||||
src={require('./img/truenas06.webp').default}
|
||||
src={require('./img/truenas/truenas07.webp').default}
|
||||
width="40%"
|
||||
alt="Networking Settings"
|
||||
className="border rounded-xl"
|
||||
/>
|
||||
|
||||
Accept the default port `30041` in **WebUI Port** or enter a custom port number.
|
||||
:::info Allowed Port Numbers
|
||||
Only numbers within the range 9000-65535 may be used on TrueNAS versions below TrueNAS Community Edition 24.10 Electric Eel.
|
||||
- **Port Bind Mode**: This lets you expose the port to the host system, allowing you to access Immich from outside the TrueNAS system. Keep the default **_Publish port on the host for external access_** value unless you have a specific reason to change it.
|
||||
|
||||
Regardless of version, to avoid port conflicts, don't use [ports on this list](https://www.truenas.com/docs/solutions/optimizations/security/#truenas-default-ports).
|
||||
:::
|
||||
- **Port Number**: Keep the default port `30041` or enter a custom port number.
|
||||
|
||||
- **Host IPs**: Leave the default blank value.
|
||||
|
||||
### Storage Configuration
|
||||
|
||||
Immich requires seven storage datasets.
|
||||
|
||||
<img
|
||||
src={require('./img/truenas07.webp').default}
|
||||
width="20%"
|
||||
alt="Configure Storage ixVolumes"
|
||||
className="border rounded-xl"
|
||||
/>
|
||||
|
||||
:::note Default Setting (Not recommended)
|
||||
The default setting for datasets is **ixVolume (dataset created automatically by the system)** but this results in your data being harder to access manually and can result in data loss if you delete the immich app. (Not recommended)
|
||||
:::danger Default Settings (Not recommended)
|
||||
The default setting for datasets is **ixVolume (dataset created automatically by the system)**. This is not recommended as this results in your data being harder to access manually and can result in data loss if you delete the immich app. It is also harder to manage snapshots and replication tasks. It is recommended to use the **Host Path (Path that already exists on the system)** option instead.
|
||||
:::
|
||||
|
||||
For each Storage option select **Host Path (Path that already exists on the system)** and then select the matching dataset [created before installing the app](#setting-up-storage-datasets): **Immich Library Storage**: `library`, **Immich Uploads Storage**: `upload`, **Immich Thumbs Storage**: `thumbs`, **Immich Profile Storage**: `profile`, **Immich Video Storage**: `video`, **Immich Backups Storage**: `backups`, **Postgres Data Storage**: `pgData`.
|
||||
The storage configuration section allows you to set up the storage locations for Immich data. You can select the datasets created in the previous step.
|
||||
|
||||
<img
|
||||
src={require('./img/truenas08.webp').default}
|
||||
src={require('./img/truenas/truenas08.webp').default}
|
||||
width="40%"
|
||||
alt="Configure Storage Host Paths"
|
||||
alt="Configure Storage Volumes"
|
||||
className="border rounded-xl"
|
||||
/>
|
||||
The image above has example values.
|
||||
|
||||
<br/>
|
||||
For the Data Storage, select **Host Path (Path that already exists on the system)** and then select the dataset you created for Immich data storage, for example, `data`.
|
||||
|
||||
### Additional Storage [(External Libraries)](/docs/features/libraries)
|
||||
The Machine Learning cache can be left with default _Temporary_
|
||||
|
||||
For the Postgres Data Storage, select **Host Path (Path that already exists on the system)** and then select the dataset you created for Postgres data storage, for example, `pgData`.
|
||||
|
||||
:::info
|
||||
**Postgres Data Storage**
|
||||
Once **Host Path** is selected, a checkbox appears with **_Automatic Permissions_**. If you have not set the ownership of the **pgData** dataset to `netdata` (UID 999), tick this box as it will set the user ownership to `netdata` (UID 999) and the group ownership to `docker` (GID 999) automatically. If you have set the ownership of the **pgData** dataset to `netdata` (UID 999), you can leave this box unticked.
|
||||
:::
|
||||
|
||||
### Additional Storage (Advanced Users)
|
||||
|
||||
<details>
|
||||
<summary>External Libraries</summary>
|
||||
|
||||
:::danger Advanced Users Only
|
||||
This feature should only be used by advanced users. If this is your first time installing Immich, then DO NOT mount an external library until you have a working setup. Also, your mount path MUST be something unique and should NOT be your library or upload location or a Linux directory like `/lib`. The picture below shows a valid example.
|
||||
This feature should only be used by advanced users. If this is your first time installing Immich, then DO NOT mount an external library until you have a working setup.
|
||||
:::
|
||||
|
||||
<img
|
||||
src={require('./img/truenas10.webp').default}
|
||||
src={require('./img/truenas/truenas09.webp').default}
|
||||
width="40%"
|
||||
alt="Configure Storage Host Paths"
|
||||
alt="Add External Libraries with Additional Storage"
|
||||
className="border rounded-xl"
|
||||
/>
|
||||
|
||||
You may configure [External Libraries](/docs/features/libraries) by mounting them using **Additional Storage**.
|
||||
The **Mount Path** is the location you will need to copy and paste into the External Library settings within Immich.
|
||||
The **Host Path** is the location on the TrueNAS Community Edition server where your external library is located.
|
||||
You may configure [external libraries](/docs/features/libraries) by mounting them using **Additional Storage**.
|
||||
|
||||
<!-- A section for Labels would go here but I don't know what they do. -->
|
||||
The dataset that contains your external library files must at least give **read** access to the user running Immich (Default: `apps` (UID 568), `apps` (GID 568)).
|
||||
If you want to be able to delete files or edit metadata in the external library using Immich, you will need to give the **modify** permission to the user running Immich.
|
||||
|
||||
- **Mount Path** is the location you will need to copy and paste into the external library settings within Immich.
|
||||
- **Host Path** is the location on the TrueNAS Community Edition server where your external library is located.
|
||||
- **Read Only** is a checkbox that you can tick if you want to prevent Immich from modifying the files in the external library. This is useful if you want to use Immich to view and search your external library without modifying it.
|
||||
|
||||
:::warning
|
||||
Each mount path MUST be something unique and should NOT be your library or upload location or a Linux directory like `/lib`.
|
||||
|
||||
A general recommendation is to mount any external libraries to a path beginning with `/mnt` or `/media` followed by a unique name, such as `/mnt/external-libraries` or `/media/my-external-libraries`. If you plan to mount multiple external libraries, you can use paths like `/mnt/external-libraries/library1`, `/mnt/external-libraries/library2`, etc.
|
||||
:::
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>Multiple Datasets for Immich Storage</summary>
|
||||
|
||||
:::danger Advanced Users Only
|
||||
This feature should only be used by advanced users.
|
||||
:::
|
||||
|
||||
Immich can use multiple datasets for its storage, allowing you to manage your data more granularly, similar to the old storage configuration. This is useful if you want to separate your data into different datasets for performance or organizational reasons. There is a general guide for this [here](/docs/guides/custom-locations), but read on for the TrueNAS guide.
|
||||
|
||||
Each additional dataset has to give the permission **_modify_** to the user who will run Immich (Default: `apps` (UID 568), `apps` (GID 568))
|
||||
As described in the [Setting up Storage Datasets](#setting-up-storage-datasets) section above, you have to create the datasets with the **Apps** preset to ensure the correct permissions are set, or you can set the permissions manually after creating the datasets.
|
||||
|
||||
Immich uses 6 folders for its storage: `library`, `upload`, `thumbs`, `profile`, `encoded-video`, and `backups`. You can create a dataset for each of these folders or only for some of them.
|
||||
|
||||
To mount these datasets:
|
||||
|
||||
1. Add an **Additional Storage** entry for each dataset you want to use.
|
||||
2. Select **Type** as **Host Path (Path that already exists on the system)**.
|
||||
3. Enter the **Mount Path** with `/data/<folder-name>`. The `<folder-name>` is the name of the folder you want to mount, for example, `library`, `upload`, `thumbs`, `profile`, `encoded-video`, or `backups`.
|
||||
:::danger Important
|
||||
You have to write the full path, including `/data/`, as Immich expects the data to be in that location.
|
||||
If you do not include this path, Immich will not be able to find the data and will not write the data to the location you specified.
|
||||
:::
|
||||
4. Select the **Host Path** as the dataset you created for that folder, for example, `/mnt/tank/immich/library`, `/mnt/tank/immich/upload`, etc.
|
||||
|
||||
<img
|
||||
src={require('./img/truenas/truenas10.webp').default}
|
||||
width="40%"
|
||||
alt="Use Multiple Datasets for Immich Storage with Additional Storage"
|
||||
className="border rounded-xl"
|
||||
/>
|
||||
|
||||
</details>
|
||||
|
||||
<!-- A section for Labels could be added, but I don't think it is needed as they are of no use for Immich. -->
|
||||
|
||||
### Resources Configuration
|
||||
|
||||
<img
|
||||
src={require('./img/truenas09.webp').default}
|
||||
src={require('./img/truenas/truenas11.webp').default}
|
||||
width="40%"
|
||||
alt="Resource Limits"
|
||||
className="border rounded-xl"
|
||||
/>
|
||||
|
||||
Accept the default **CPU** limit of `2` threads or specify the number of threads (CPUs with Multi-/Hyper-threading have 2 threads per core).
|
||||
- **CPU**: Depending on your system resources, you can keep the default value of `2` threads or specify a different number. Immich recommends at least `8` threads.
|
||||
|
||||
Specify the **Memory** limit in MB of RAM. Immich recommends at least 6000 MB (6GB). If you selected **Enable Machine Learning** in **Immich Configuration**, you should probably set this above 8000 MB.
|
||||
- **Memory**: Limit in MB of RAM. Immich recommends at least 6000 MB (6GB). If you selected **Enable Machine Learning** in **Immich Configuration**, you should probably set this above 8000 MB.
|
||||
|
||||
:::info Older TrueNAS Versions
|
||||
Before TrueNAS Community Edition version 24.10 Electric Eel:
|
||||
Both **CPU** and **Memory** are limits, not reservations. This means that Immich can use up to the specified amount of CPU threads and RAM, but it will not reserve that amount of resources at all times. The system will allocate resources as needed, and Immich will use less than the specified amount most of the time.
|
||||
|
||||
The **CPU** value was specified in a different format with a default of `4000m` which is 4 threads.
|
||||
- Enable **GPU Configuration** options if you have a GPU or CPU with integrated graphics that you will use for [Hardware Transcoding](/docs/features/hardware-transcoding) and/or [Hardware-Accelerated Machine Learning](/docs/features/ml-hardware-acceleration.md).
|
||||
|
||||
The **Memory** value was specified in a different format with a default of `8Gi` which is 8 GiB of RAM. The value was specified in bytes or a number with a measurement suffix. Examples: `129M`, `123Mi`, `1000000000`
|
||||
:::
|
||||
|
||||
Enable **GPU Configuration** options if you have a GPU that you will use for [Hardware Transcoding](/docs/features/hardware-transcoding) and/or [Hardware-Accelerated Machine Learning](/docs/features/ml-hardware-acceleration.md). More info: [GPU Passthrough Docs for TrueNAS Apps](https://apps.truenas.com/managing-apps/installing-apps/#gpu-passthrough)
|
||||
The process for NVIDIA GPU passthrough requires additional steps.
|
||||
More details here: [GPU Passthrough Docs for TrueNAS Apps](https://apps.truenas.com/managing-apps/installing-apps/#gpu-passthrough)
|
||||
|
||||
### Install
|
||||
|
||||
Finally, click **Install**.
|
||||
The system opens the **Installed Applications** screen with the Immich app in the **Deploying** state.
|
||||
When the installation completes it changes to **Running**.
|
||||
When the installation completes, it changes to **Running**.
|
||||
|
||||
<img
|
||||
src={require('./img/truenas04.webp').default}
|
||||
src={require('./img/truenas/truenas12.webp').default}
|
||||
width="100%"
|
||||
alt="Immich Installed"
|
||||
className="border rounded-xl"
|
||||
/>
|
||||
|
||||
Click **Web Portal** on the **Application Info** widget to open the Immich web interface to set up your account and begin uploading photos.
|
||||
Click **Web Portal** on the **Application Info** widget, or go to the URL `http://<your-truenas-ip>:30041` in your web browser to open the Immich web interface. This will show you the onboarding process to set up your first user account, which will be an administrator account.
|
||||
|
||||
After that, you can start using Immich to upload and manage your photos and videos.
|
||||
|
||||
:::tip
|
||||
For more information on how to use the application once installed, please refer to the [Post Install](/docs/install/post-install.mdx) guide.
|
||||
@@ -228,23 +344,6 @@ For more information on how to use the application once installed, please refer
|
||||
- Click **Update** at the very bottom of the page to save changes.
|
||||
- TrueNAS automatically updates, recreates, and redeploys the Immich container with the updated settings.
|
||||
|
||||
## Environment Variables
|
||||
|
||||
You can set [Environment Variables](/docs/install/environment-variables) by clicking **Add** on the **Additional Environment Variables** option and filling in the **Name** and **Value**.
|
||||
|
||||
<img
|
||||
src={require('./img/truenas11.webp').default}
|
||||
width="40%"
|
||||
alt="Environment Variables"
|
||||
className="border rounded-xl"
|
||||
/>
|
||||
|
||||
:::info
|
||||
Some Environment Variables are not available for the TrueNAS Community Edition app. This is mainly because they can be configured through GUI options in the [Edit Immich screen](#edit-app-settings).
|
||||
|
||||
Some examples are: `IMMICH_VERSION`, `UPLOAD_LOCATION`, `DB_DATA_LOCATION`, `TZ`, `IMMICH_LOG_LEVEL`, `DB_PASSWORD`, `REDIS_PASSWORD`.
|
||||
:::
|
||||
|
||||
## Updating the App
|
||||
|
||||
:::danger
|
||||
@@ -261,3 +360,116 @@ To update the app to the latest version:
|
||||
- You may view the Changelog.
|
||||
- Click **Upgrade** to begin the process and open a counter dialog that shows the upgrade progress.
|
||||
- When complete, the update badge and buttons disappear and the application Update state on the Installed screen changes from Update Available to Up to date.
|
||||
|
||||
## Migration
|
||||
|
||||
:::danger
|
||||
Perform a backup of your Immich data before proceeding with the migration steps below. This is crucial to prevent any data loss if something goes wrong during the migration process.
|
||||
|
||||
The migration should also be performed when the Immich app is not running to ensure no data is being written while you are copying the data.
|
||||
:::
|
||||
|
||||
### Migration from Old Storage Configuration
|
||||
|
||||
There are two ways to migrate from the old storage configuration to the new one, depending on whether you want to keep the old multiple datasets or if you want to move to a double dataset configuration with a single dataset for Immich data storage and a single dataset for Postgres data storage.
|
||||
|
||||
:::note Old TrueNAS Versions Permissions
|
||||
If you were using an older version of TrueNAS (before 24.10.2.2), the datasets, except the one for **pgData** had only to be owned by the `root` user (UID 0). You might have to add the **modify** permission to the `apps` user (UID 568) or the user you want to run Immich as, to all of them, except **pgData**. The steps to add or change ACL permissions are described in the [TrueNAS documentation](https://www.truenas.com/docs/scale/scaletutorials/datasets/permissionsscale/).
|
||||
:::
|
||||
|
||||
<Tabs groupId="truenas-migration-tabs">
|
||||
<TabItem value="migrate-new-dataset" label="Migrate data to a new dataset (recommended)" default>
|
||||
|
||||
To migrate from the old storage configuration to the new one, you will need to create a new dataset for the Immich data storage and copy the data from the old datasets to the new ones. The steps are as follows:
|
||||
|
||||
1. **Stop the Immich app** from the TrueNAS web interface to ensure no data is being written while you are copying the data.
|
||||
2. **Create a new dataset** for the Immich data storage, for example, `data`. As described in the [Setting up Storage Datasets](#setting-up-storage-datasets) section above, create the dataset with the **Apps** preset to ensure the correct permissions are set.
|
||||
3. **Copy the data** from the old datasets to the new dataset. We advise using the `rsync` command to copy the data, as it will preserve the permissions and ownership of the files. The following commands are examples:
|
||||
|
||||
```bash
|
||||
rsync -av /mnt/tank/immich/library/ /mnt/tank/immich/data/library/
|
||||
rsync -av /mnt/tank/immich/upload/ /mnt/tank/immich/data/upload/
|
||||
rsync -av /mnt/tank/immich/thumbs/ /mnt/tank/immich/data/thumbs/
|
||||
rsync -av /mnt/tank/immich/profile/ /mnt/tank/immich/data/profile/
|
||||
rsync -av /mnt/tank/immich/video/ /mnt/tank/immich/data/encoded-video/
|
||||
rsync -av /mnt/tank/immich/backups/ /mnt/tank/immich/data/backups/
|
||||
```
|
||||
|
||||
Make sure to replace `/mnt/tank/immich/` with the correct path to your old datasets and `/mnt/tank/immich/data/` with the correct path to your new dataset.
|
||||
|
||||
:::tip
|
||||
If you were using **ixVolume (dataset created automatically by the system)** for Immich data storage, the path to the data should be `/mnt/.ix-apps/app_mounts/immich/`. You have to use this path instead of `/mnt/tank/immich/` in the `rsync` command above, for example:
|
||||
|
||||
```bash
|
||||
rsync -av /mnt/.ix-apps/app_mounts/immich/library/ /mnt/tank/immich/data/library/
|
||||
```
|
||||
|
||||
If you were also using an ixVolume for Postgres data storage, you also should, first create the pgData dataset, as described in the [Setting up Storage Datasets](#setting-up-storage-datasets) section above, and then you can use the following command to copy the Postgres data:
|
||||
|
||||
```bash
|
||||
rsync -av /mnt/.ix-apps/app_mounts/immich/pgData/ /mnt/tank/immich/pgData/
|
||||
```
|
||||
|
||||
:::
|
||||
|
||||
:::warning
|
||||
Make sure that for each folder, the `.immich` file is copied as well, as it contains important metadata for Immich. If for some reason the `.immich` file is not copied, you can copy it manually with the `rsync` command, for example:
|
||||
|
||||
```bash
|
||||
rsync -av /mnt/tank/immich/library/.immich /mnt/tank/immich/data/library/
|
||||
```
|
||||
|
||||
Replace `library` with the name of the folder where you are copying the file.
|
||||
:::
|
||||
|
||||
4. **Update the permissions** as the permissions of the data that have been copied has been preserved, to ensure that the `apps` user (UID 568) has the correct permissions on all the copied data. If you just created the dataset with the **Apps** preset, from the TrueNAS web interface, go to the **Datasets** screen, select the **data** dataset, click on the **Edit** button next to **Permissions**, tick the "Apply permissions recursively" checkbox, and click **Save**. This will apply the correct permissions to all the copied data.
|
||||
5. **Update the Immich app** to use the new dataset:
|
||||
- Go to the **Installed Applications** screen and select Immich from the list of installed applications.
|
||||
- Click **Edit** on the **Application Info** widget.
|
||||
- In the **Storage Configuration** section, untick the **Use Old Storage Configuration (Deprecated)** checkbox.
|
||||
- For the **Data Storage**, select **Host Path (Path that already exists on the system)** and then select the new dataset you created for Immich data storage, for example, `data`.
|
||||
- For the **Postgres Data Storage**, verify that it is still set to the dataset you created for Postgres data storage, for example, `pgData`.
|
||||
- Click **Update** at the bottom of the page to save changes.
|
||||
|
||||
6. **Start the Immich app** from the TrueNAS web interface.
|
||||
|
||||
This will recreate the Immich container with the new storage configuration and start the app.
|
||||
|
||||
If everything went well, you should now be able to access Immich with the new storage configuration. You can verify that the data has been copied correctly by checking the Immich web interface and ensuring that all your photos and videos are still available. You may delete the old datasets, if you no longer need them, using the TrueNAS web interface.
|
||||
|
||||
If you were using **ixVolume (dataset created automatically by the system)** or folders for Immich data storage, you can delete the old datasets using the following commands:
|
||||
|
||||
```bash
|
||||
rm -r /mnt/.ix-apps/app_mounts/immich/library
|
||||
rm -r /mnt/.ix-apps/app_mounts/immich/uploads
|
||||
rm -r /mnt/.ix-apps/app_mounts/immich/thumbs
|
||||
rm -r /mnt/.ix-apps/app_mounts/immich/profile
|
||||
rm -r /mnt/.ix-apps/app_mounts/immich/video
|
||||
rm -r /mnt/.ix-apps/app_mounts/immich/backups
|
||||
```
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="migrate-old-dataset" label="Keep the existing datasets">
|
||||
|
||||
To migrate from the old storage configuration to the new one without creating new datasets.
|
||||
1. **Stop the Immich app** from the TrueNAS web interface to ensure no data is being written while you are updating the app.
|
||||
2. **Update the datasets permissions**: Ensure that the datasets used for Immich data storage (`library`, `upload`, `thumbs`, `profile`, `video`, `backups`) have the correct permissions set for the user who will run Immich. The user should have ***modify*** permissions on these datasets. The default user for Immich is `apps` (UID 568) and the default group is `apps` (GID 568). If you are using a different user, make sure to set the permissions accordingly. You can do this from the TrueNAS web interface by going to the **Datasets** screen, selecting each dataset, clicking on the **Edit** button next to **Permissions**, and adding the user with ***modify*** permissions.
|
||||
3. **Update the Immich app** to use the existing datasets:
|
||||
- Go to the **Installed Applications** screen and select Immich from the list of installed applications.
|
||||
- Click **Edit** on the **Application Info** widget.
|
||||
- In the **Storage Configuration** section, untick the **Use Old Storage Configuration (Deprecated)** checkbox.
|
||||
- For the **Data Storage**, you can keep the **ixVolume (dataset created automatically by the system)** as no data will be directly written to it. We recommend selecting **Host Path (Path that already exists on the system)** and then select a **new** dataset you created for Immich data storage, for example, `data`.
|
||||
- For the **Postgres Data Storage**, keep **Host Path (Path that already exists on the system)** and then select the existing dataset you used for Postgres data storage, for example, `pgData`.
|
||||
- Following the instructions in the [Multiple Datasets for Immich Storage](#additional-storage-advanced-users) section, you can add, **for each old dataset**, a new Additional Storage with the following settings:
|
||||
- **Type**: `Host Path (Path that already exists on the system)`
|
||||
- **Mount Path**: `/data/<folder-name>` (e.g. `/data/library`)
|
||||
- **Host Path**: `/mnt/<your-pool-name>/<dataset-name>` (e.g. `/mnt/tank/immich/library`)
|
||||
:::danger Ensure using the correct paths names
|
||||
Make sure to replace `<folder-name>` with the actual name of the folder used by Immich: `library`, `upload`, `thumbs`, `profile`, `encoded-video`, and `backups`. Also, replace `<your-pool-name>` and `<dataset-name>` with the actual names of your pool and dataset.
|
||||
:::
|
||||
- **Read Only**: Keep it unticked as Immich needs to write to these datasets.
|
||||
- Click **Update** at the bottom of the page to save changes.
|
||||
4. **Start the Immich app** from the TrueNAS web interface. This will recreate the Immich container with the new storage configuration and start the app. If everything went well, you should now be able to access Immich with the new storage configuration. You can verify that the data is still available by checking the Immich web interface and ensuring that all your photos and videos are still accessible.
|
||||
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
@@ -27,3 +27,102 @@ docker image prune
|
||||
[watchtower]: https://containrrr.dev/watchtower/
|
||||
[breaking]: https://github.com/immich-app/immich/discussions?discussions_q=label%3Achangelog%3Abreaking-change+sort%3Adate_created
|
||||
[releases]: https://github.com/immich-app/immich/releases
|
||||
|
||||
## Migrating to VectorChord
|
||||
|
||||
:::info
|
||||
If you deploy Immich using Docker Compose, see `ghcr.io/immich-app/postgres` in the `docker-compose.yml` file and have not explicitly set the `DB_VECTOR_EXTENSION` environmental variable, your Immich database is already using VectorChord and this section does not apply to you.
|
||||
:::
|
||||
|
||||
:::important
|
||||
If you do not deploy Immich using Docker Compose and see a deprecation warning for pgvecto.rs on server startup, you should refer to the maintainers of the Immich distribution for guidance (if using a turnkey solution) or adapt the instructions for your specific setup.
|
||||
:::
|
||||
|
||||
Immich has migrated off of the deprecated pgvecto.rs database extension to its successor, [VectorChord](https://github.com/tensorchord/VectorChord), which comes with performance improvements in almost every aspect. This section will guide you on how to make this change in a Docker Compose setup.
|
||||
|
||||
Before making any changes, please [back up your database](/docs/administration/backup-and-restore). While every effort has been made to make this migration as smooth as possible, there’s always a chance that something can go wrong.
|
||||
|
||||
After making a backup, please modify your `docker-compose.yml` file with the following information.
|
||||
|
||||
```diff
|
||||
[...]
|
||||
|
||||
database:
|
||||
container_name: immich_postgres
|
||||
- image: docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:739cdd626151ff1f796dc95a6591b55a714f341c737e27f045019ceabf8e8c52
|
||||
+ image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0
|
||||
environment:
|
||||
POSTGRES_PASSWORD: ${DB_PASSWORD}
|
||||
POSTGRES_USER: ${DB_USERNAME}
|
||||
POSTGRES_DB: ${DB_DATABASE_NAME}
|
||||
POSTGRES_INITDB_ARGS: '--data-checksums'
|
||||
+ # Uncomment the DB_STORAGE_TYPE: 'HDD' var if your database isn't stored on SSDs
|
||||
+ # DB_STORAGE_TYPE: 'HDD'
|
||||
volumes:
|
||||
# Do not edit the next line. If you want to change the database storage location on your system, edit the value of DB_DATA_LOCATION in the .env file
|
||||
- ${DB_DATA_LOCATION}:/var/lib/postgresql/data
|
||||
- healthcheck:
|
||||
- test: >-
|
||||
- pg_isready --dbname="$${POSTGRES_DB}" --username="$${POSTGRES_USER}" || exit 1;
|
||||
- Chksum="$$(psql --dbname="$${POSTGRES_DB}" --username="$${POSTGRES_USER}" --tuples-only --no-align
|
||||
- --command='SELECT COALESCE(SUM(checksum_failures), 0) FROM pg_stat_database')";
|
||||
- echo "checksum failure count is $$Chksum";
|
||||
- [ "$$Chksum" = '0' ] || exit 1
|
||||
- interval: 5m
|
||||
- start_interval: 30s
|
||||
- start_period: 5m
|
||||
- command: >-
|
||||
- postgres
|
||||
- -c shared_preload_libraries=vectors.so
|
||||
- -c 'search_path="$$user", public, vectors'
|
||||
- -c logging_collector=on
|
||||
- -c max_wal_size=2GB
|
||||
- -c shared_buffers=512MB
|
||||
- -c wal_compression=on
|
||||
+ shm_size: 128mb
|
||||
restart: always
|
||||
|
||||
[...]
|
||||
```
|
||||
|
||||
:::important
|
||||
If you deviated from the defaults of pg14 or pgvectors0.2.0, you must adjust the pg major version and pgvecto.rs version. If you are still using the default `docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0` image, you can just follow the changes above. For example, if the previous image is `docker.io/tensorchord/pgvecto-rs:pg16-v0.3.0`, the new image should be `ghcr.io/immich-app/postgres:16-vectorchord0.3.0-pgvectors0.3.0` instead of the image specified in the diff.
|
||||
:::
|
||||
|
||||
After making these changes, you can start Immich as normal. Immich will make some changes to the DB during startup, which can take seconds to minutes to finish, depending on hardware and library size. In particular, it’s normal for the server logs to be seemingly stuck at `Reindexing clip_index` and `Reindexing face_index`for some time if you have over 100k assets in Immich and/or Immich is on a relatively weak server. If you see these logs and there are no errors, just give it time.
|
||||
|
||||
:::danger
|
||||
After switching to VectorChord, you should not downgrade Immich below 1.133.0.
|
||||
:::
|
||||
|
||||
Please don’t hesitate to contact us on [GitHub](https://github.com/immich-app/immich/discussions) or [Discord](https://discord.immich.app/) if you encounter migration issues.
|
||||
|
||||
### VectorChord FAQ
|
||||
|
||||
#### I have a separate PostgreSQL instance shared with multiple services. How can I switch to VectorChord?
|
||||
|
||||
Please see the [standalone PostgreSQL documentation](/docs/administration/postgres-standalone#migrating-to-vectorchord) for migration instructions. The migration path will be different depending on whether you’re currently using pgvecto.rs or pgvector, as well as whether Immich has superuser DB permissions.
|
||||
|
||||
#### Why are so many lines removed from the `docker-compose.yml` file? Does this mean the health check is removed?
|
||||
|
||||
These lines are now incorporated into the image itself along with some additional tuning.
|
||||
|
||||
#### What does this change mean for my existing DB backups?
|
||||
|
||||
The new DB image includes pgvector and pgvecto.rs in addition to VectorChord, so you can use this image to restore from existing backups that used either of these extensions. However, backups made after switching to VectorChord require an image containing VectorChord to restore successfully.
|
||||
|
||||
#### Do I still need pgvecto.rs installed after migrating to VectorChord?
|
||||
|
||||
pgvecto.rs only needs to be available during the migration, or if you need to restore from a backup that used pgvecto.rs. For a leaner DB and a smaller image, you can optionally switch to an image variant that doesn’t have pgvecto.rs installed after you’ve performed the migration and started Immich: `ghcr.io/immich-app/postgres:14-vectorchord0.4.3`, changing the PostgreSQL version as appropriate.
|
||||
|
||||
#### Why does it matter whether my database is on an SSD or an HDD?
|
||||
|
||||
These storage mediums have different performance characteristics. As a result, the optimal settings for an SSD are not the same as those for an HDD. Either configuration is compatible with SSD and HDD, but using the right configuration will make Immich snappier. As a general tip, we recommend users store the database on an SSD whenever possible.
|
||||
|
||||
#### Can I use the new database image as a general PostgreSQL image outside of Immich?
|
||||
|
||||
It’s a standard PostgreSQL container image that additionally contains the VectorChord, pgvector, and (optionally) pgvecto.rs extensions. If you were using the previous pgvecto.rs image for other purposes, you can similarly do so with this image.
|
||||
|
||||
#### If pgvecto.rs and pgvector still work, why should I switch to VectorChord?
|
||||
|
||||
VectorChord is faster, more stable, uses less RAM, and (with the settings Immich uses) offers higher-quality results than pgvector and pgvecto.rs. This translates to better search and facial recognition experiences. In addition, pgvecto.rs support will be dropped in the future, so changing it sooner will avoid disruption.
|
||||
|
||||
20545
docs/package-lock.json
generated
@@ -7,7 +7,8 @@
|
||||
"format": "prettier --check .",
|
||||
"format:fix": "prettier --write .",
|
||||
"start": "docusaurus start --port 3005",
|
||||
"build": "docusaurus build",
|
||||
"copy:openapi": "jq -c < ../open-api/immich-openapi-specs.json > ./static/openapi.json || exit 0",
|
||||
"build": "npm run copy:openapi && docusaurus build",
|
||||
"swizzle": "docusaurus swizzle",
|
||||
"deploy": "docusaurus deploy",
|
||||
"clear": "docusaurus clear",
|
||||
@@ -59,6 +60,6 @@
|
||||
"node": ">=20"
|
||||
},
|
||||
"volta": {
|
||||
"node": "22.17.1"
|
||||
"node": "22.18.0"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,6 +16,9 @@ import {
|
||||
mdiCloudKeyOutline,
|
||||
mdiRegex,
|
||||
mdiCodeJson,
|
||||
mdiClockOutline,
|
||||
mdiAccountOutline,
|
||||
mdiRestart,
|
||||
} from '@mdi/js';
|
||||
import Layout from '@theme/Layout';
|
||||
import React from 'react';
|
||||
@@ -26,6 +29,42 @@ const withLanguage = (date: Date) => (language: string) => date.toLocaleDateStri
|
||||
type Item = Omit<TimelineItem, 'done' | 'getDateLabel'> & { date: Date };
|
||||
|
||||
const items: Item[] = [
|
||||
{
|
||||
icon: mdiClockOutline,
|
||||
iconColor: 'gray',
|
||||
title: 'setTimeout is cursed',
|
||||
description:
|
||||
'The setTimeout method in JavaScript is cursed when used with small values because the implementation may or may not actually wait the specified time.',
|
||||
link: {
|
||||
url: 'https://github.com/immich-app/immich/pull/20655',
|
||||
text: '#20655',
|
||||
},
|
||||
date: new Date(2025, 7, 4),
|
||||
},
|
||||
{
|
||||
icon: mdiAccountOutline,
|
||||
iconColor: '#DAB1DA',
|
||||
title: 'PostgreSQL USER is cursed',
|
||||
description:
|
||||
'The USER keyword in PostgreSQL is cursed because you can select from it like a table, which leads to confusion if you have a table name user as well.',
|
||||
link: {
|
||||
url: 'https://github.com/immich-app/immich/pull/19891',
|
||||
text: '#19891',
|
||||
},
|
||||
date: new Date(2025, 7, 4),
|
||||
},
|
||||
{
|
||||
icon: mdiRestart,
|
||||
iconColor: '#8395e3',
|
||||
title: 'PostgreSQL RESET is cursed',
|
||||
description:
|
||||
'PostgreSQL RESET is cursed because it is impossible to RESET a PostgreSQL extension parameter if the extension has been uninstalled.',
|
||||
link: {
|
||||
url: 'https://github.com/immich-app/immich/pull/19363',
|
||||
text: '#19363',
|
||||
},
|
||||
date: new Date(2025, 5, 20),
|
||||
},
|
||||
{
|
||||
icon: mdiRegex,
|
||||
iconColor: 'purple',
|
||||
|
||||
32
docs/static/archived-versions.json
vendored
@@ -1,4 +1,36 @@
|
||||
[
|
||||
{
|
||||
"label": "v1.139.1",
|
||||
"url": "https://v1.139.1.archive.immich.app"
|
||||
},
|
||||
{
|
||||
"label": "v1.139.0",
|
||||
"url": "https://v1.139.0.archive.immich.app"
|
||||
},
|
||||
{
|
||||
"label": "v1.138.1",
|
||||
"url": "https://v1.138.1.archive.immich.app"
|
||||
},
|
||||
{
|
||||
"label": "v1.138.0",
|
||||
"url": "https://v1.138.0.archive.immich.app"
|
||||
},
|
||||
{
|
||||
"label": "v1.137.3",
|
||||
"url": "https://v1.137.3.archive.immich.app"
|
||||
},
|
||||
{
|
||||
"label": "v1.137.2",
|
||||
"url": "https://v1.137.2.archive.immich.app"
|
||||
},
|
||||
{
|
||||
"label": "v1.137.1",
|
||||
"url": "https://v1.137.1.archive.immich.app"
|
||||
},
|
||||
{
|
||||
"label": "v1.137.0",
|
||||
"url": "https://v1.137.0.archive.immich.app"
|
||||
},
|
||||
{
|
||||
"label": "v1.136.0",
|
||||
"url": "https://v1.136.0.archive.immich.app"
|
||||
|
||||
1
e2e/.gitignore
vendored
@@ -3,3 +3,4 @@ node_modules/
|
||||
/playwright-report/
|
||||
/blob-report/
|
||||
/playwright/.cache/
|
||||
/dist
|
||||
|
||||
@@ -1 +1 @@
|
||||
22.17.1
|
||||
22.18.0
|
||||
|
||||
7451
e2e/package-lock.json
generated
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "immich-e2e",
|
||||
"version": "1.136.0",
|
||||
"version": "1.139.1",
|
||||
"description": "",
|
||||
"main": "index.js",
|
||||
"type": "module",
|
||||
@@ -26,7 +26,7 @@
|
||||
"@playwright/test": "^1.44.1",
|
||||
"@socket.io/component-emitter": "^3.1.2",
|
||||
"@types/luxon": "^3.4.2",
|
||||
"@types/node": "^22.16.5",
|
||||
"@types/node": "^22.17.1",
|
||||
"@types/oidc-provider": "^9.0.0",
|
||||
"@types/pg": "^8.15.1",
|
||||
"@types/pngjs": "^6.0.4",
|
||||
@@ -35,7 +35,7 @@
|
||||
"eslint": "^9.14.0",
|
||||
"eslint-config-prettier": "^10.1.8",
|
||||
"eslint-plugin-prettier": "^5.1.3",
|
||||
"eslint-plugin-unicorn": "^59.0.0",
|
||||
"eslint-plugin-unicorn": "^60.0.0",
|
||||
"exiftool-vendored": "^28.3.1",
|
||||
"globals": "^16.0.0",
|
||||
"jose": "^5.6.3",
|
||||
@@ -54,6 +54,6 @@
|
||||
"vitest": "^3.0.0"
|
||||
},
|
||||
"volta": {
|
||||
"node": "22.17.1"
|
||||
"node": "22.18.0"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -683,7 +683,7 @@ describe('/albums', () => {
|
||||
.set('Authorization', `Bearer ${user1.accessToken}`)
|
||||
.send({ role: AlbumUserRole.Editor });
|
||||
|
||||
expect(status).toBe(200);
|
||||
expect(status).toBe(204);
|
||||
|
||||
// Get album to verify the role change
|
||||
const { body } = await request(app)
|
||||
|
||||
@@ -555,7 +555,7 @@ describe('/asset', () => {
|
||||
expect(body).toMatchObject({ id: user1Assets[0].id, livePhotoVideoId: null });
|
||||
});
|
||||
|
||||
it('should update date time original when sidecar file contains DateTimeOriginal', async () => {
|
||||
it.skip('should update date time original when sidecar file contains DateTimeOriginal', async () => {
|
||||
const sidecarData = `<?xpacket begin='?' id='W5M0MpCehiHzreSzNTczkc9d'?>
|
||||
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='Image::ExifTool 12.40'>
|
||||
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'>
|
||||
@@ -854,6 +854,30 @@ describe('/asset', () => {
|
||||
});
|
||||
});
|
||||
|
||||
describe('PUT /assets', () => {
|
||||
it('should update date time original relatively', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.put(`/assets/`)
|
||||
.set('Authorization', `Bearer ${user1.accessToken}`)
|
||||
.send({ ids: [user1Assets[0].id], dateTimeRelative: -1441 });
|
||||
|
||||
expect(body).toEqual({});
|
||||
expect(status).toEqual(204);
|
||||
|
||||
const result = await request(app)
|
||||
.get(`/assets/${user1Assets[0].id}`)
|
||||
.set('Authorization', `Bearer ${user1.accessToken}`)
|
||||
.send();
|
||||
|
||||
expect(result.body).toMatchObject({
|
||||
id: user1Assets[0].id,
|
||||
exifInfo: expect.objectContaining({
|
||||
dateTimeOriginal: '2023-11-19T01:10:00+00:00',
|
||||
}),
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('POST /assets', () => {
|
||||
beforeAll(setupTests, 30_000);
|
||||
|
||||
|
||||
@@ -116,7 +116,7 @@ describe('/partners', () => {
|
||||
.delete(`/partners/${user3.userId}`)
|
||||
.set('Authorization', `Bearer ${user1.accessToken}`);
|
||||
|
||||
expect(status).toBe(200);
|
||||
expect(status).toBe(204);
|
||||
});
|
||||
|
||||
it('should throw a bad request if partner not found', async () => {
|
||||
|
||||
@@ -9,7 +9,7 @@ import {
|
||||
} from '@immich/sdk';
|
||||
import { createUserDto, uuidDto } from 'src/fixtures';
|
||||
import { errorDto } from 'src/responses';
|
||||
import { app, asBearerAuth, shareUrl, utils } from 'src/utils';
|
||||
import { app, asBearerAuth, baseUrl, shareUrl, utils } from 'src/utils';
|
||||
import request from 'supertest';
|
||||
import { beforeAll, describe, expect, it } from 'vitest';
|
||||
|
||||
@@ -78,6 +78,7 @@ describe('/shared-links', () => {
|
||||
type: SharedLinkType.Album,
|
||||
albumId: metadataAlbum.id,
|
||||
showMetadata: true,
|
||||
slug: 'metadata-album',
|
||||
}),
|
||||
utils.createSharedLink(user1.accessToken, {
|
||||
type: SharedLinkType.Album,
|
||||
@@ -138,6 +139,17 @@ describe('/shared-links', () => {
|
||||
});
|
||||
});
|
||||
|
||||
describe('GET /s/:slug', () => {
|
||||
it('should work for slug auth', async () => {
|
||||
const resp = await request(baseUrl).get(`/s/${linkWithMetadata.slug}`);
|
||||
expect(resp.status).toBe(200);
|
||||
expect(resp.header['content-type']).toContain('text/html');
|
||||
expect(resp.text).toContain(
|
||||
`<meta name="description" content="${metadataAlbum.assets.length} shared photos & videos" />`,
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
describe('GET /shared-links', () => {
|
||||
it('should require authentication', async () => {
|
||||
const { status, body } = await request(app).get('/shared-links');
|
||||
@@ -473,7 +485,7 @@ describe('/shared-links', () => {
|
||||
.delete(`/shared-links/${linkWithAlbum.id}`)
|
||||
.set('Authorization', `Bearer ${user1.accessToken}`);
|
||||
|
||||
expect(status).toBe(200);
|
||||
expect(status).toBe(204);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -304,7 +304,7 @@ describe('/users', () => {
|
||||
const { status } = await request(app)
|
||||
.delete(`/users/me/license`)
|
||||
.set('Authorization', `Bearer ${nonAdmin.accessToken}`);
|
||||
expect(status).toBe(200);
|
||||
expect(status).toBe(204);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -79,7 +79,7 @@ export const tempDir = tmpdir();
|
||||
export const asBearerAuth = (accessToken: string) => ({ Authorization: `Bearer ${accessToken}` });
|
||||
export const asKeyAuth = (key: string) => ({ 'x-api-key': key });
|
||||
export const immichCli = (args: string[]) =>
|
||||
executeCommand('node', ['node_modules/.bin/immich', '-d', `/${tempDir}/immich/`, ...args]).promise;
|
||||
executeCommand('pnpm', ['exec', 'immich', '-d', `/${tempDir}/immich/`, ...args], { cwd: '../cli' }).promise;
|
||||
export const immichAdmin = (args: string[]) =>
|
||||
executeCommand('docker', ['exec', '-i', 'immich-e2e-server', '/bin/bash', '-c', `immich-admin ${args.join(' ')}`]);
|
||||
export const specialCharStrings = ["'", '"', ',', '{', '}', '*'];
|
||||
|
||||
133
i18n/ar.json
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"about": "عن",
|
||||
"about": "حَوْل",
|
||||
"account": "حساب",
|
||||
"account_settings": "إعدادات الحساب",
|
||||
"acknowledge": "أُدرك ذلك",
|
||||
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "إضافة موقع",
|
||||
"add_a_name": "إضافة إسم",
|
||||
"add_a_title": "إضافة عنوان",
|
||||
"add_birthday": "أضف تاريخ الميلاد",
|
||||
"add_endpoint": "اضف نقطة نهاية",
|
||||
"add_exclusion_pattern": "إضافة نمط إستثناء",
|
||||
"add_import_path": "إضافة مسار الإستيراد",
|
||||
@@ -25,8 +26,11 @@
|
||||
"add_tag": "اضف علامة",
|
||||
"add_to": "إضافة إلى…",
|
||||
"add_to_album": "إضافة إلى ألبوم",
|
||||
"add_to_album_bottom_sheet_added": "تمت الاضافة{album}",
|
||||
"add_to_album_bottom_sheet_already_exists": "موجودة مسبقا {album}",
|
||||
"add_to_album_bottom_sheet_added": "تمت الاضافة الى {album}",
|
||||
"add_to_album_bottom_sheet_already_exists": "موجود مسبقا في {album}",
|
||||
"add_to_album_toggle": "تبديل التحديد لـ{album}",
|
||||
"add_to_albums": "إضافة الى البومات",
|
||||
"add_to_albums_count": "إضافه إلى البومات ({count})",
|
||||
"add_to_shared_album": "إضافة إلى ألبوم مشارك",
|
||||
"add_url": "إضافة رابط",
|
||||
"added_to_archive": "أُضيفت للأرشيف",
|
||||
@@ -34,16 +38,23 @@
|
||||
"added_to_favorites_count": "تم إضافة {count, number} إلى المفضلات",
|
||||
"admin": {
|
||||
"add_exclusion_pattern_description": "إضافة أنماط الاستبعاد. يدعم التمويه باستخدام *، **، و؟. لتجاهل جميع الملفات في أي دليل يسمى \"Raw\"، استخدم \"**/Raw/**\". لتجاهل جميع الملفات التي تنتهي بـ \".tif\"، استخدم \"**/*.tif\". لتجاهل مسار مطلق، استخدم \"/path/to/ignore/**\".",
|
||||
"admin_user": "مستخدم مدير",
|
||||
"admin_user": "مستخدم مسؤول",
|
||||
"asset_offline_description": "لم يعد هذا الأصل الخاص بالمكتبة الخارجية موجودًا على القرص وتم نقله إلى سلة المهملات. إذا تم نقل الملف داخل المكتبة، فتحقق من الجدول الزمني الخاص بك لمعرفة الأصل الجديد المقابل. لاستعادة هذا الأصل، يرجى التأكد من إمكانية الوصول إلى مسار الملف أدناه بواسطة Immich ومن ثم قم بمسح المكتبة.",
|
||||
"authentication_settings": "إعدادات المصادقة",
|
||||
"authentication_settings_description": "إدارة كلمة المرور وOAuth وإعدادات المصادقة الأُخرى",
|
||||
"authentication_settings_disable_all": "هل أنت متأكد أنك تريد تعطيل جميع وسائل تسجيل الدخول؟ سيتم تعطيل تسجيل الدخول بالكامل.",
|
||||
"authentication_settings_reenable": "لإعادة التفعيل، استخدم <link>أمر الخادم</link>.",
|
||||
"background_task_job": "المهام الخلفية",
|
||||
"background_task_job": "المهام في الخلفية",
|
||||
"backup_database": "انشاء تفريغ قاعدة البيانات",
|
||||
"backup_database_enable_description": "تمكين تفريغ قاعدة البيانات",
|
||||
"backup_keep_last_amount": "مقدار التفريغات السابقة للاحتفاظ بها",
|
||||
"backup_onboarding_1_description": "نسخة خارج الموقع في موقع آخر.",
|
||||
"backup_onboarding_2_description": "نسخ محلية على أجهزة مختلفة. يشمل ذلك الملفات الرئيسية ونسخة احتياطية محلية منها.",
|
||||
"backup_onboarding_3_description": "إجمالي نسخ بياناتك، بما في ذلك الملفات الأصلية. يشمل ذلك نسخةً واحدةً خارج الموقع ونسختين محليتين.",
|
||||
"backup_onboarding_description": "يُنصح باتباع <backblaze-link>استراتيجية النسخ الاحتياطي 3-2-1</backblaze-link> لحماية بياناتك. احتفظ بنسخ احتياطية من صورك/فيديوهاتك المحمّلة، بالإضافة إلى قاعدة بيانات Immich، لضمان حل نسخ احتياطي شامل.",
|
||||
"backup_onboarding_footer": "لمزيد من المعلومات حول النسخ الاحتياطي لـ Immich، يرجى الرجوع إلى <link> التعليمات </link>.",
|
||||
"backup_onboarding_parts_title": "يتضمن النسخ الاحتياطي 3-2-1 ما يلي:",
|
||||
"backup_onboarding_title": "النسخ الاحتياطية",
|
||||
"backup_settings": "إعدادات تفريغ قاعدة البيانات",
|
||||
"backup_settings_description": "إدارة إعدادات تفريغ قاعدة البيانات.",
|
||||
"cleared_jobs": "تم إخلاء مهام: {job}",
|
||||
@@ -210,6 +221,8 @@
|
||||
"oauth_mobile_redirect_uri": "عنوان URI لإعادة التوجيه على الهاتف",
|
||||
"oauth_mobile_redirect_uri_override": "تجاوز عنوان URI لإعادة التوجيه على الهاتف",
|
||||
"oauth_mobile_redirect_uri_override_description": "قم بتفعيله عندما لا يسمح موفر OAuth بمعرف URI للجوال، مثل ''{callback}''",
|
||||
"oauth_role_claim": "المطالبة بالدور(صلاحيات)",
|
||||
"oauth_role_claim_description": "منح وصول المسؤول تلقائيًا بناءً على وجود هذا الطلب. قد يكون الطلب إما 'مستخدم' أو 'مسؤول'.",
|
||||
"oauth_settings": "OAuth",
|
||||
"oauth_settings_description": "إدارة إعدادات تسجيل الدخول OAuth",
|
||||
"oauth_settings_more_details": "لمزيد من التفاصيل حول هذه الميزة، يرجى الرجوع إلى <link>الوثائق</link>.",
|
||||
@@ -345,6 +358,9 @@
|
||||
"trash_number_of_days_description": "عدد أيام الاحتفاظ بالمحتويات في سلة المهملات قبل حذفها نهائيًا",
|
||||
"trash_settings": "إعدادات سلة المهملات",
|
||||
"trash_settings_description": "إدارة إعدادات سلة المهملات",
|
||||
"unlink_all_oauth_accounts": "ازالة ربط جميع حسابات OAuth",
|
||||
"unlink_all_oauth_accounts_description": "تذكّر ان تزيل ربط جميع حسابات OAuth قبل ان تنقل الى مزود جديد.",
|
||||
"unlink_all_oauth_accounts_prompt": "هل انت متأكد من ازالة ربط جميع حسابات OAuth؟ هذا سيقوم باعادة ضبط الID الخاص بالOAuth لكل مستخدم ولا يمكن التراجع عن العملية.",
|
||||
"user_cleanup_job": "تنظيف المستخدم",
|
||||
"user_delete_delay": "سيتم جدولة حساب <b>{user}</b> ومحتوياته للحذف النهائي في غضون {delay, plural, one {# يوم} other {# أيام}}.",
|
||||
"user_delete_delay_settings": "فترة التأخير قبل الحذف",
|
||||
@@ -371,10 +387,12 @@
|
||||
"admin_password": "كلمة سر المشرف",
|
||||
"administration": "الإدارة",
|
||||
"advanced": "متقدم",
|
||||
"advanced_settings_beta_timeline_subtitle": "جرب تجربة التطبيق الجديدة",
|
||||
"advanced_settings_beta_timeline_title": "الجدول الزمني التجريبي",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "استخدم هذا الخيار لتصفية الوسائط اثناء المزامنه بناء على معايير بديلة. جرب هذا الخيار فقط كان لديك مشاكل مع التطبيق بالكشف عن جميع الالبومات.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[تجريبي] استخدم جهاز تصفية مزامنه البومات بديل",
|
||||
"advanced_settings_log_level_title": "مستوى السجل: {level}",
|
||||
"advanced_settings_prefer_remote_subtitle": "تكون بعض الأجهزة بطيئة للغاية في تحميل الصور المصغرة من الأصول الموجودة على الجهاز. قم بتنشيط هذا الإعداد لتحميل الصور البعيدة بدلاً من ذلك.",
|
||||
"advanced_settings_prefer_remote_subtitle": "تكون بعض الأجهزة بطيئة للغاية في تحميل الصور المصغرة من الأصول المحلية. قم بتفعيل هذا الخيار لتحميل الصور البعيدة بدلاً من ذلك.",
|
||||
"advanced_settings_prefer_remote_title": "تفضل الصور البعيدة",
|
||||
"advanced_settings_proxy_headers_subtitle": "عرف عناوين الوكيل التي يستخدمها Immich لارسال كل طلب شبكي",
|
||||
"advanced_settings_proxy_headers_title": "عناوين الوكيل",
|
||||
@@ -393,6 +411,7 @@
|
||||
"album_cover_updated": "تم تحديث غلاف الألبوم",
|
||||
"album_delete_confirmation": "هل أنت متأكد أنك تريد حذف الألبوم {album}؟",
|
||||
"album_delete_confirmation_description": "إذا تمت مشاركة هذا الألبوم، فلن يتمكن المستخدمون الآخرون من الوصول إليه بعد الآن.",
|
||||
"album_deleted": "تم حذف الالبوم",
|
||||
"album_info_card_backup_album_excluded": "مستبعد",
|
||||
"album_info_card_backup_album_included": "متضمنة",
|
||||
"album_info_updated": "تم تحديث معلومات الألبوم",
|
||||
@@ -402,6 +421,7 @@
|
||||
"album_options": "إعدادات الألبوم",
|
||||
"album_remove_user": "هل ترغب في إزالة المستخدم؟",
|
||||
"album_remove_user_confirmation": "هل أنت متأكد أنك تريد إزالة {user}؟",
|
||||
"album_search_not_found": "لم يتم ايجاد البوم مطابق لبحثك",
|
||||
"album_share_no_users": "يبدو أنك قمت بمشاركة هذا الألبوم مع جميع المستخدمين أو ليس لديك أي مستخدم للمشاركة معه.",
|
||||
"album_updated": "تم تحديث الألبوم",
|
||||
"album_updated_setting_description": "تلقي إشعارًا عبر البريد الإلكتروني عندما يحتوي الألبوم المشترك على محتويات جديدة",
|
||||
@@ -421,6 +441,7 @@
|
||||
"albums_default_sort_order": "ترتيب الألبوم الافتراضي",
|
||||
"albums_default_sort_order_description": "ترتيب فرز الأصول الأولي عند إنشاء ألبومات جديدة.",
|
||||
"albums_feature_description": "مجموعة من الأصول التي يمكن مشاركتها مع مستخدمين آخرين.",
|
||||
"albums_on_device_count": "عدد الالبومات على الجهاز ({count})",
|
||||
"all": "الكل",
|
||||
"all_albums": "جميع الألبومات",
|
||||
"all_people": "جميع الأشخاص",
|
||||
@@ -435,7 +456,7 @@
|
||||
"api_key_description": "سيتم عرض هذه القيمة مرة واحدة فقط. يرجى التأكد من نسخها قبل إغلاق النافذة.",
|
||||
"api_key_empty": "يجب ألا يكون اسم مفتاح API فارغًا",
|
||||
"api_keys": "مفاتيح API",
|
||||
"app_bar_signout_dialog_content": "هل أنت متأكد أنك تريد الخروج",
|
||||
"app_bar_signout_dialog_content": "هل أنت متأكد أنك تريد تسجيل الخروج؟",
|
||||
"app_bar_signout_dialog_ok": "نعم",
|
||||
"app_bar_signout_dialog_title": "خروج",
|
||||
"app_settings": "إعدادات التطبيق",
|
||||
@@ -504,6 +525,7 @@
|
||||
"back_close_deselect": "الرجوع أو الإغلاق أو إلغاء التحديد",
|
||||
"background_location_permission": "اذن الوصول للموقع في الخلفية",
|
||||
"background_location_permission_content": "للتمكن من تبديل الشبكه بالخلفية، Immich يحتاج*دائما* للحصول على موقع دقيق ليتمكن التطبيق من قرائة اسم شبكة الWi-Fi",
|
||||
"backup": "نسخ احتياطي",
|
||||
"backup_album_selection_page_albums_device": "الالبومات على الجهاز ({count})",
|
||||
"backup_album_selection_page_albums_tap": "انقر للتضمين، وانقر نقرًا مزدوجًا للاستثناء",
|
||||
"backup_album_selection_page_assets_scatter": "يمكن أن تنتشر الأصول عبر ألبومات متعددة. وبالتالي، يمكن تضمين الألبومات أو استبعادها أثناء عملية النسخ الاحتياطي.",
|
||||
@@ -564,9 +586,13 @@
|
||||
"backup_manual_in_progress": "قيد التحميل حاول مره اخرى",
|
||||
"backup_manual_success": "نجاح",
|
||||
"backup_manual_title": "حالة التحميل",
|
||||
"backup_options": "خيارات النسخ الاحتياطي",
|
||||
"backup_options_page_title": "خيارات النسخ الاحتياطي",
|
||||
"backup_setting_subtitle": "ادارة اعدادات التحميل في الخلفية والمقدمة",
|
||||
"backup_settings_subtitle": "إدارة إعدادات التحميل",
|
||||
"backward": "الى الوراء",
|
||||
"beta_sync": "حالة المزامنة التجريبية",
|
||||
"beta_sync_subtitle": "ادارة نظام المزامنة الجديد",
|
||||
"biometric_auth_enabled": "المصادقة البايومترية مفعله",
|
||||
"biometric_locked_out": "لقد قفلت عنك المصادقة البيومترية",
|
||||
"biometric_no_options": "لا توجد خيارات بايومترية متوفرة",
|
||||
@@ -584,7 +610,7 @@
|
||||
"cache_settings_clear_cache_button": "مسح ذاكرة التخزين المؤقت",
|
||||
"cache_settings_clear_cache_button_title": "يقوم بمسح ذاكرة التخزين المؤقت للتطبيق.سيؤثر هذا بشكل كبير على أداء التطبيق حتى إعادة بناء ذاكرة التخزين المؤقت.",
|
||||
"cache_settings_duplicated_assets_clear_button": "واضح",
|
||||
"cache_settings_duplicated_assets_subtitle": "الصور ومقاطع الفيديو اللتي تم تجاهلها المدرجة في التطبيق",
|
||||
"cache_settings_duplicated_assets_subtitle": "الصور والفيديوهات اللتي تم تجاهلها في التطبيق",
|
||||
"cache_settings_duplicated_assets_title": "الاصول المكررة ({count})",
|
||||
"cache_settings_statistics_album": "مكتبه الصور المصغره",
|
||||
"cache_settings_statistics_full": "صور كاملة",
|
||||
@@ -601,6 +627,7 @@
|
||||
"cancel": "إلغاء",
|
||||
"cancel_search": "الغاء البحث",
|
||||
"canceled": "تم الالغاء",
|
||||
"canceling": "جارِ الالغاء",
|
||||
"cannot_merge_people": "لا يمكن دمج الأشخاص",
|
||||
"cannot_undo_this_action": "لا يمكنك التراجع عن هذا الإجراء!",
|
||||
"cannot_update_the_description": "لا يمكن تحديث الوصف",
|
||||
@@ -616,7 +643,7 @@
|
||||
"change_password": "تغيير كلمة المرور",
|
||||
"change_password_description": "هذه إما هي المرة الأولى التي تقوم فيها بتسجيل الدخول إلى النظام أو أنه تم تقديم طلب لتغيير كلمة المرور الخاصة بك. الرجاء إدخال كلمة المرور الجديدة أدناه.",
|
||||
"change_password_form_confirm_password": "تأكيد كلمة المرور",
|
||||
"change_password_form_description": "مرحبًا ،هذه هي المرة الأولى التي تقوم فيها بالتسجيل في النظام أو تم تقديم طلب لتغيير كلمة المرور الخاصة بك.الرجاء إدخال كلمة المرور الجديدة أدناه",
|
||||
"change_password_form_description": "مرحبًا {name}،\n\nاما ان تكون هذه هي المرة الأولى التي تقوم فيها بالتسجيل في النظام أو تم تقديم طلب لتغيير كلمة المرور الخاصة بك. الرجاء إدخال كلمة المرور الجديدة أدناه.",
|
||||
"change_password_form_new_password": "كلمة المرور الجديدة",
|
||||
"change_password_form_password_mismatch": "كلمة المرور غير مطابقة",
|
||||
"change_password_form_reenter_new_password": "أعد إدخال كلمة مرور جديدة",
|
||||
@@ -632,6 +659,7 @@
|
||||
"clear": "إخلاء",
|
||||
"clear_all": "إخلاء الكل",
|
||||
"clear_all_recent_searches": "مسح جميع عمليات البحث الأخيرة",
|
||||
"clear_file_cache": "مسح ذاكرة التخزين المؤقت للملفات",
|
||||
"clear_message": "إخلاء الرسالة",
|
||||
"clear_value": "إخلاء القيمة",
|
||||
"client_cert_dialog_msg_confirm": "حسنا",
|
||||
@@ -702,6 +730,7 @@
|
||||
"create_new_user": "إنشاء مستخدم جديد",
|
||||
"create_shared_album_page_share_add_assets": "إضافة الأصول",
|
||||
"create_shared_album_page_share_select_photos": "حدد الصور",
|
||||
"create_shared_link": "انشاء رابط مشترك",
|
||||
"create_tag": "إنشاء علامة",
|
||||
"create_tag_description": "أنشئ علامة جديدة. بالنسبة للعلامات المتداخلة، يرجى إدخال المسار الكامل للعلامة بما في ذلك الخطوط المائلة للأمام.",
|
||||
"create_user": "إنشاء مستخدم",
|
||||
@@ -714,6 +743,7 @@
|
||||
"current_server_address": "عنوان الخادم الحالي",
|
||||
"custom_locale": "لغة مخصصة",
|
||||
"custom_locale_description": "تنسيق التواريخ والأرقام بناءً على اللغة والمنطقة",
|
||||
"custom_url": "رابط مخصص",
|
||||
"daily_title_text_date": "E ، MMM DD",
|
||||
"daily_title_text_date_year": "E ، MMM DD ، yyyy",
|
||||
"dark": "معتم",
|
||||
@@ -725,6 +755,7 @@
|
||||
"date_of_birth_saved": "تم حفظ تاريخ الميلاد بنجاح",
|
||||
"date_range": "نطاق الموعد",
|
||||
"day": "يوم",
|
||||
"days": "ايام",
|
||||
"deduplicate_all": "إلغاء تكرار الكل",
|
||||
"deduplication_criteria_1": "حجم الصورة بوحدات البايت",
|
||||
"deduplication_criteria_2": "عدد بيانات EXIF",
|
||||
@@ -733,7 +764,8 @@
|
||||
"default_locale": "اللغة الافتراضية",
|
||||
"default_locale_description": "تنسيق التواريخ والأرقام بناءً على لغة المتصفح الخاص بك",
|
||||
"delete": "حذف",
|
||||
"delete_action_prompt": "{count} حذف بشكل نهائي",
|
||||
"delete_action_confirmation_message": "هل انت متأكد من حذف هذا الملف؟ هذا سؤدي الى نقل الملف الى سلة مهملات الخادم وسيتم اشعارك ان كنت تريد حذفه على الجهاز",
|
||||
"delete_action_prompt": "تم حذف {count}",
|
||||
"delete_album": "حذف الألبوم",
|
||||
"delete_api_key_prompt": "هل أنت متأكد أنك تريد حذف مفتاح API هذا؟",
|
||||
"delete_dialog_alert": "هذه العناصر سيتم حذفها بشكل دائم من Immich و من جهازك",
|
||||
@@ -747,9 +779,12 @@
|
||||
"delete_key": "حذف المفتاح",
|
||||
"delete_library": "حذف المكتبة",
|
||||
"delete_link": "حذف الرابط",
|
||||
"delete_local_action_prompt": "تم حذف {count} من الجهاز",
|
||||
"delete_local_dialog_ok_backed_up_only": "حذف النسخة الاحتياطية فقط",
|
||||
"delete_local_dialog_ok_force": "احذف على أي حال",
|
||||
"delete_others": "حذف الأخرى",
|
||||
"delete_permanently": "حذف بشكل نهائي",
|
||||
"delete_permanently_action_prompt": "تم حذف {count} بشكل نهائي",
|
||||
"delete_shared_link": "حذف الرابط المشترك",
|
||||
"delete_shared_link_dialog_title": "حذف الرابط المشترك",
|
||||
"delete_tag": "حذف العلامة",
|
||||
@@ -760,6 +795,7 @@
|
||||
"description": "وصف",
|
||||
"description_input_hint_text": "اضف وصفا...",
|
||||
"description_input_submit_error": "خطأ تحديث الوصف ، تحقق من السجل لمزيد من التفاصيل",
|
||||
"deselect_all": "الغاء تحديد الكل",
|
||||
"details": "تفاصيل",
|
||||
"direction": "الإتجاه",
|
||||
"disabled": "معطل",
|
||||
@@ -777,6 +813,7 @@
|
||||
"documentation": "الوثائق",
|
||||
"done": "تم",
|
||||
"download": "تنزيل",
|
||||
"download_action_prompt": "يتم تنزيل {count} ملف",
|
||||
"download_canceled": "الغي التنزيل",
|
||||
"download_complete": "اكتمل التنزيل",
|
||||
"download_enqueue": "تنزيل في قائمة الانتظار",
|
||||
@@ -803,8 +840,12 @@
|
||||
"edit": "تعديل",
|
||||
"edit_album": "تعديل الألبوم",
|
||||
"edit_avatar": "تعديل الصورة الشخصية",
|
||||
"edit_birthday": "تعديل تاريخ الميلاد",
|
||||
"edit_date": "تعديل التاريخ",
|
||||
"edit_date_and_time": "تعديل التاريخ والوقت",
|
||||
"edit_date_and_time_action_prompt": "تم تعديل التاريخ والوقت ل{count} ملف(ات)",
|
||||
"edit_date_and_time_by_offset": "تعديل التاريخ حسب قيمة ازاحة معينة",
|
||||
"edit_date_and_time_by_offset_interval": "نطاق التاريخ الجديد: {from} - {to}",
|
||||
"edit_description": "تعديل الوصف",
|
||||
"edit_description_prompt": "الرجاء اختيار وصف جديد:",
|
||||
"edit_exclusion_pattern": "تعديل نمط الاستبعاد",
|
||||
@@ -833,6 +874,7 @@
|
||||
"empty_trash": "أفرغ سلة المهملات",
|
||||
"empty_trash_confirmation": "هل أنت متأكد أنك تريد إفراغ سلة المهملات؟ سيؤدي هذا إلى إزالة جميع المحتويات الموجودة في سلة المهملات بشكل نهائي من Immich.\nلا يمكنك التراجع عن هذا الإجراء!",
|
||||
"enable": "تفعيل",
|
||||
"enable_backup": "تشغيل النسخ الاحتياطي",
|
||||
"enable_biometric_auth_description": "أدخل رمز PIN الخاص بك لتمكين المصادقة البيومترية",
|
||||
"enabled": "مفعل",
|
||||
"end_date": "تاريخ الإنتهاء",
|
||||
@@ -876,6 +918,7 @@
|
||||
"failed_to_load_notifications": "فشل تحميل الإشعارات",
|
||||
"failed_to_load_people": "فشل تحميل الأشخاص",
|
||||
"failed_to_remove_product_key": "تعذر إزالة مفتاح المنتج",
|
||||
"failed_to_reset_pin_code": "فشل اعادة تعيين رمز الPIN",
|
||||
"failed_to_stack_assets": "فشل في تكديس المحتويات",
|
||||
"failed_to_unstack_assets": "فشل في فصل المحتويات",
|
||||
"failed_to_update_notification_status": "فشل في تحديث حالة الإشعار",
|
||||
@@ -884,6 +927,7 @@
|
||||
"paths_validation_failed": "فشل في التحقق من {paths, plural, one {# مسار} other {# مسارات}}",
|
||||
"profile_picture_transparent_pixels": "لا يمكن أن تحتوي صور الملف الشخصي على أجزاء/بكسلات شفافة. يرجى التكبير و/أو تحريك الصورة.",
|
||||
"quota_higher_than_disk_size": "لقد قمت بتعيين حصة نسبية أعلى من حجم القرص",
|
||||
"something_went_wrong": "حدث خطأ ما",
|
||||
"unable_to_add_album_users": "تعذر إضافة مستخدمين إلى الألبوم",
|
||||
"unable_to_add_assets_to_shared_link": "تعذر إضافة المحتويات إلى الرابط المشترك",
|
||||
"unable_to_add_comment": "تعذر إضافة التعليق",
|
||||
@@ -969,13 +1013,11 @@
|
||||
},
|
||||
"exif": "Exif (صيغة ملف صوري قابل للتبادل)",
|
||||
"exif_bottom_sheet_description": "اضف وصفا...",
|
||||
"exif_bottom_sheet_description_error": "خطأ في تحديث الوصف",
|
||||
"exif_bottom_sheet_details": "تفاصيل",
|
||||
"exif_bottom_sheet_location": "موقع",
|
||||
"exif_bottom_sheet_people": "الناس",
|
||||
"exif_bottom_sheet_person_add_person": "اضف اسما",
|
||||
"exif_bottom_sheet_person_age_months": "العمر {months} اشهر",
|
||||
"exif_bottom_sheet_person_age_year_months": "العمر ١ سنة،{months} اشهر",
|
||||
"exif_bottom_sheet_person_age_years": "العمر {years}",
|
||||
"exit_slideshow": "خروج من العرض التقديمي",
|
||||
"expand_all": "توسيع الكل",
|
||||
"experimental_settings_new_asset_list_subtitle": "أعمال جارية",
|
||||
@@ -989,6 +1031,8 @@
|
||||
"explorer": "المستكشف",
|
||||
"export": "تصدير",
|
||||
"export_as_json": "تصدير كـ JSON",
|
||||
"export_database": "تصدير قاعدة البيانات",
|
||||
"export_database_description": "تصدير قاعدة البيانات من نوع SQLite",
|
||||
"extension": "الإمتداد",
|
||||
"external": "خارجي",
|
||||
"external_libraries": "المكتبات الخارجية",
|
||||
@@ -1020,6 +1064,7 @@
|
||||
"folder_not_found": "لم يتم العثور على المجلد",
|
||||
"folders": "المجلدات",
|
||||
"folders_feature_description": "تصفح عرض المجلد للصور ومقاطع الفيديو الموجودة على نظام الملفات",
|
||||
"forgot_pin_code_question": "هل نسيت رمز الPIN الخاص بك؟",
|
||||
"forward": "إلى الأمام",
|
||||
"gcast_enabled": "كوكل كاست",
|
||||
"gcast_enabled_description": "تقوم هذه الميزة بتحميل الموارد الخارجية من Google حتى تعمل.",
|
||||
@@ -1040,6 +1085,9 @@
|
||||
"haptic_feedback_switch": "تمكين ردود الفعل اللمسية",
|
||||
"haptic_feedback_title": "ردود فعل لمسية",
|
||||
"has_quota": "محدد بحصة",
|
||||
"hash_asset": "عمل Hash للأصل (للملف)",
|
||||
"hashed_assets": "أصول (ملفات) تم عمل Hash لها",
|
||||
"hashing": "يتم عمل Hash",
|
||||
"header_settings_add_header_tip": "اضاف راس",
|
||||
"header_settings_field_validator_msg": "القيمة لا يمكن ان تكون فارغة",
|
||||
"header_settings_header_name_input": "اسم الرأس",
|
||||
@@ -1053,9 +1101,9 @@
|
||||
"hide_password": "اخفاء كلمة المرور",
|
||||
"hide_person": "اخفاء الشخص",
|
||||
"hide_unnamed_people": "إخفاء الأشخاص بدون إسم",
|
||||
"home_page_add_to_album_conflicts": "تمت إضافة {تمت إضافة} الأصول إلى الألبوم {الألبوم}.{فشل} الأصول موجودة بالفعل في الألبوم.",
|
||||
"home_page_add_to_album_conflicts": "تمت إضافة {added} أصول إلى الألبوم {album}. {failed} أصول موجودة بالفعل في الألبوم.",
|
||||
"home_page_add_to_album_err_local": "لا يمكن إضافة الأصول المحلية إلى الألبومات حتى الآن ، سوف يتخطى",
|
||||
"home_page_add_to_album_success": "تمت إضافة {تمت إضافة} الأصول إلى الألبوم {الألبوم}.",
|
||||
"home_page_add_to_album_success": "تمت إضافة {added} أصول إلى الألبوم {album}.",
|
||||
"home_page_album_err_partner": "لا يمكن إضافة أصول شريكة إلى ألبوم حتى الآن ، سوف يتخطى",
|
||||
"home_page_archive_err_local": "لا يمكن أرشفة الأصول المحلية حتى الآن ، سوف يتخطى",
|
||||
"home_page_archive_err_partner": "لا يمكن أرشفة الأصول الشريكة ، سوف يتخطى",
|
||||
@@ -1071,7 +1119,9 @@
|
||||
"home_page_upload_err_limit": "لا يمكن إلا تحميل 30 أحد الأصول في وقت واحد ، سوف يتخطى",
|
||||
"host": "المضيف",
|
||||
"hour": "ساعة",
|
||||
"hours": "ساعات",
|
||||
"id": "المعرف",
|
||||
"idle": "خامل",
|
||||
"ignore_icloud_photos": "تجاهل صور iCloud",
|
||||
"ignore_icloud_photos_description": "الصور المخزنة في Cloud لن يتم تحميلها إلى خادم Immich",
|
||||
"image": "صورة",
|
||||
@@ -1129,10 +1179,12 @@
|
||||
"language_no_results_title": "لم يتم العثور على لغات",
|
||||
"language_search_hint": "البحث عن لغات...",
|
||||
"language_setting_description": "اختر لغتك المفضلة",
|
||||
"large_files": "ملفات كبيرة",
|
||||
"last_seen": "اخر ظهور",
|
||||
"latest_version": "احدث اصدار",
|
||||
"latitude": "خط العرض",
|
||||
"leave": "مغادرة",
|
||||
"leave_album": "اترك الالبوم",
|
||||
"lens_model": "نموذج العدسات",
|
||||
"let_others_respond": "دع الآخرين يستجيبون",
|
||||
"level": "المستوى",
|
||||
@@ -1144,16 +1196,19 @@
|
||||
"library_page_sort_created": "تاريخ الإنشاء",
|
||||
"library_page_sort_last_modified": "آخر تعديل",
|
||||
"library_page_sort_title": "عنوان الألبوم",
|
||||
"licenses": "رُخَص",
|
||||
"light": "المضيئ",
|
||||
"like": "اعجاب",
|
||||
"like_deleted": "تم حذف الإعجاب",
|
||||
"link_motion_video": "رابط فيديو الحركة",
|
||||
"link_options": "خيارات الرابط",
|
||||
"link_to_oauth": "الربط مع OAuth",
|
||||
"linked_oauth_account": "حساب مرتبط بـ OAuth",
|
||||
"list": "قائمة",
|
||||
"loading": "تحميل",
|
||||
"loading_search_results_failed": "فشل تحميل نتائج البحث",
|
||||
"local": "محلّي",
|
||||
"local_asset_cast_failed": "غير قادر على بث أصل لم يتم تحميله إلى الخادم",
|
||||
"local_assets": "أُصول (ملفات) محلية",
|
||||
"local_network": "شبكة محلية",
|
||||
"local_network_sheet_info": "سيتصل التطبيق بالخادم من خلال عنوان URL هذا عند استخدام شبكة Wi-Fi المحددة",
|
||||
"location_permission": "اذن الموقع",
|
||||
@@ -1210,8 +1265,7 @@
|
||||
"manage_your_devices": "إدارة الأجهزة التي تم تسجيل الدخول إليها",
|
||||
"manage_your_oauth_connection": "إدارة اتصال OAuth الخاص بك",
|
||||
"map": "الخريطة",
|
||||
"map_assets_in_bound": "{count} صوره",
|
||||
"map_assets_in_bounds": "{count} صور",
|
||||
"map_assets_in_bounds": "{count, plural, =0 {لايوجد صور في هذه المنطقة} one {# صورة} other {# صور}}",
|
||||
"map_cannot_get_user_location": "لا يمكن الحصول على موقع المستخدم",
|
||||
"map_location_dialog_yes": "نعم",
|
||||
"map_location_picker_page_use_location": "استخدم هذا الموقع",
|
||||
@@ -1219,7 +1273,6 @@
|
||||
"map_location_service_disabled_title": "خدمة الموقع معطل",
|
||||
"map_marker_for_images": "علامة الخريطة للصور الملتقطة في {city}، {country}",
|
||||
"map_marker_with_image": "علامة الخريطة مع الصورة",
|
||||
"map_no_assets_in_bounds": "لا توجد صور في هذا المجال",
|
||||
"map_no_location_permission_content": "هناك حاجة إلى إذن الموقع لعرض الأصول من موقعك الحالي.هل تريد السماح به الآن؟",
|
||||
"map_no_location_permission_title": "تم رفض إذن الموقع",
|
||||
"map_settings": "إعدادات الخريطة",
|
||||
@@ -1256,6 +1309,7 @@
|
||||
"merged_people_count": "دمج {count, plural, one {شخص واحد} other {# أشخاص}}",
|
||||
"minimize": "تصغير",
|
||||
"minute": "دقيقة",
|
||||
"minutes": "دقائق",
|
||||
"missing": "المفقودة",
|
||||
"model": "نموذج",
|
||||
"month": "شهر",
|
||||
@@ -1275,6 +1329,9 @@
|
||||
"my_albums": "ألبوماتي",
|
||||
"name": "الاسم",
|
||||
"name_or_nickname": "الاسم أو اللقب",
|
||||
"network_requirement_photos_upload": "استخدام بيانات الهاتف المحمول لعمل نسخة احتياطية للصور",
|
||||
"network_requirement_videos_upload": "استخدام بيانات الهاتف المحمول لعمل نسخة احتياطية لمقاطع الفيديو",
|
||||
"network_requirements_updated": "تم تغيير متطلبات الشبكة، يتم إعادة تعيين قائمة انتظار النسخ الاحتياطي",
|
||||
"networking_settings": "الشبكات",
|
||||
"networking_subtitle": "إدارة إعدادات نقطة الخادم النهائية",
|
||||
"never": "أبداً",
|
||||
@@ -1310,6 +1367,7 @@
|
||||
"no_results": "لا يوجد نتائج",
|
||||
"no_results_description": "جرب كلمة رئيسية مرادفة أو أكثر عمومية",
|
||||
"no_shared_albums_message": "قم بإنشاء ألبوم لمشاركة الصور ومقاطع الفيديو مع الأشخاص في شبكتك",
|
||||
"no_uploads_in_progress": "لا يوجد اي ملفات قيد الرفع",
|
||||
"not_in_any_album": "ليست في أي ألبوم",
|
||||
"not_selected": "لم يختار",
|
||||
"note_apply_storage_label_to_previously_uploaded assets": "ملاحظة: لتطبيق سمة التخزين على المحتويات التي تم رفعها مسبقًا، قم بتشغيل",
|
||||
@@ -1325,6 +1383,7 @@
|
||||
"oauth": "OAuth",
|
||||
"official_immich_resources": "الموارد الرسمية لشركة Immich",
|
||||
"offline": "غير متصل",
|
||||
"offset": "ازاحة",
|
||||
"ok": "نعم",
|
||||
"oldest_first": "الأقدم أولا",
|
||||
"on_this_device": "على هذا الجهاز",
|
||||
@@ -1347,6 +1406,7 @@
|
||||
"original": "أصلي",
|
||||
"other": "أخرى",
|
||||
"other_devices": "أجهزة أخرى",
|
||||
"other_entities": "كيانات أخرى",
|
||||
"other_variables": "متغيرات أخرى",
|
||||
"owned": "مملوكة",
|
||||
"owner": "المالك",
|
||||
@@ -1401,7 +1461,10 @@
|
||||
"permission_onboarding_permission_limited": "إذن محدود. للسماح بالنسخ الاحتياطي للتطبيق وإدارة مجموعة المعرض بالكامل، امنح أذونات الصور والفيديو في الإعدادات.",
|
||||
"permission_onboarding_request": "يتطلب التطبيق إذنًا لعرض الصور ومقاطع الفيديو الخاصة بك.",
|
||||
"person": "شخص",
|
||||
"person_birthdate": "تاريخ الميلاد {التاريخ}",
|
||||
"person_age_months": "{months, plural, one {# شهر} other {# اشهر}} من العمر",
|
||||
"person_age_year_months": "1 عام, {months, plural, one {# شهر} other {# اشهر}} من العمر",
|
||||
"person_age_years": "{years, plural, other {# اعوام}} من العمر",
|
||||
"person_birthdate": "ولد في {date}",
|
||||
"person_hidden": "{name}{hidden, select, true { (مخفي)} other {}}",
|
||||
"photo_shared_all_users": "يبدو أنك شاركت صورك مع جميع المستخدمين أو ليس لديك أي مستخدم للمشاركة معه.",
|
||||
"photos": "الصور",
|
||||
@@ -1478,6 +1541,7 @@
|
||||
"purchase_server_description_2": "حالة الداعم",
|
||||
"purchase_server_title": "الخادم",
|
||||
"purchase_settings_server_activated": "يتم إدارة مفتاح منتج الخادم من قبل مدير النظام",
|
||||
"queue_status": "يتم الاضافة الى قائمة انتظار النسخ الاحتياطي {count}/{total}",
|
||||
"rating": "تقييم نجمي",
|
||||
"rating_clear": "مسح التقييم",
|
||||
"rating_count": "{count, plural, one {# نجمة} other {# نجوم}}",
|
||||
@@ -1506,6 +1570,8 @@
|
||||
"refreshing_faces": "جاري تحديث الوجوه",
|
||||
"refreshing_metadata": "جارٍ تحديث البيانات الوصفية",
|
||||
"regenerating_thumbnails": "جارٍ تجديد الصور المصغرة",
|
||||
"remote": "بعيد",
|
||||
"remote_assets": "الأُصول البعيدة",
|
||||
"remove": "إزالة",
|
||||
"remove_assets_album_confirmation": "هل أنت متأكد أنك تريد إزالة {count, plural, one {# المحتوى} other {# المحتويات}} من الألبوم ؟",
|
||||
"remove_assets_shared_link_confirmation": "هل أنت متأكد أنك تريد إزالة {count, plural, one {# المحتوى} other {# المحتويات}} من رابط المشاركة هذا؟",
|
||||
@@ -1513,6 +1579,7 @@
|
||||
"remove_custom_date_range": "إزالة النطاق الزمني المخصص",
|
||||
"remove_deleted_assets": "إزالة الملفات الغير متصلة",
|
||||
"remove_from_album": "إزالة من الألبوم",
|
||||
"remove_from_album_action_prompt": "تم ازالة {count} من الالبوم",
|
||||
"remove_from_favorites": "إزالة من المفضلة",
|
||||
"remove_from_lock_folder_action_prompt": "{count} أويل من المجلد المقفل",
|
||||
"remove_from_locked_folder": "ازالة من المجلد المقفل",
|
||||
@@ -1542,19 +1609,28 @@
|
||||
"reset_password": "إعادة تعيين كلمة المرور",
|
||||
"reset_people_visibility": "إعادة ضبط ظهور الأشخاص",
|
||||
"reset_pin_code": "اعادة تعيين رمز PIN",
|
||||
"reset_pin_code_description": "اذا نسيت رمز الPIN الخاص بك، بامكانك التواصل مع مدير الخادم لديك لاعادة تعيينه",
|
||||
"reset_pin_code_success": "تم اعادة تعيين رمز الPIN بنجاح",
|
||||
"reset_pin_code_with_password": "يمكنك دائما اعادة تعيين رمز الPIN الخاص بك عن طريق كلمة المرور الخاصة بك",
|
||||
"reset_sqlite": "إعادة تعيين قاعدة بيانات SQLite",
|
||||
"reset_sqlite_confirmation": "هل أنت متأكد من رغبتك في إعادة ضبط قاعدة بيانات SQLite؟ ستحتاج إلى تسجيل الخروج ثم تسجيل الدخول مرة أخرى لإعادة مزامنة البيانات",
|
||||
"reset_sqlite_success": "تم إعادة تعيين قاعدة بيانات SQLite بنجاح",
|
||||
"reset_to_default": "إعادة التعيين إلى الافتراضي",
|
||||
"resolve_duplicates": "معالجة النسخ المكررة",
|
||||
"resolved_all_duplicates": "تم حل جميع التكرارات",
|
||||
"restore": "الاستعاده من سلة المهملات",
|
||||
"restore_all": "استعادة الكل",
|
||||
"restore_trash_action_prompt": "تم استعادة {count} من المهملات",
|
||||
"restore_user": "استعادة المستخدم",
|
||||
"restored_asset": "المحتويات المستعادة",
|
||||
"resume": "استئناف",
|
||||
"retry_upload": "أعد محاولة الرفع",
|
||||
"review_duplicates": "مراجعة التكرارات",
|
||||
"review_large_files": "مراجعة الملفات الكبيرة",
|
||||
"role": "الدور",
|
||||
"role_editor": "المحرر",
|
||||
"role_viewer": "العارض",
|
||||
"running": "قيد التشغيل",
|
||||
"save": "حفظ",
|
||||
"save_to_gallery": "حفظ الى المعرض",
|
||||
"saved_api_key": "تم حفظ مفتاح الـ API",
|
||||
@@ -1686,6 +1762,7 @@
|
||||
"settings_saved": "تم حفظ الإعدادات",
|
||||
"setup_pin_code": "تحديد رمز PIN",
|
||||
"share": "مشاركة",
|
||||
"share_action_prompt": "تم مشاركة {count} أصل (ملف)",
|
||||
"share_add_photos": "إضافة الصور",
|
||||
"share_assets_selected": "اختيار {count}",
|
||||
"share_dialog_preparing": "تحضير...",
|
||||
@@ -1707,6 +1784,7 @@
|
||||
"shared_link_clipboard_copied_massage": "نسخ إلى الحافظة",
|
||||
"shared_link_clipboard_text": "رابط: {link}\nكلمة المرور: {password}",
|
||||
"shared_link_create_error": "خطأ أثناء إنشاء رابط مشترك",
|
||||
"shared_link_custom_url_description": "الوصول إلى هذا الرابط المشترك باستخدام عنوان URL مخصص",
|
||||
"shared_link_edit_description_hint": "أدخل وصف المشاركة",
|
||||
"shared_link_edit_expire_after_option_day": "يوم 1",
|
||||
"shared_link_edit_expire_after_option_days": "{count} ايام",
|
||||
@@ -1732,6 +1810,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "إدارة الروابط المشتركة",
|
||||
"shared_link_options": "خيارات الرابط المشترك",
|
||||
"shared_link_password_description": "طلب كلمة مرور للوصول إلى هذا الرابط المشترك",
|
||||
"shared_links": "روابط مشتركة",
|
||||
"shared_links_description": "وصف الروابط المشتركة",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, other {# الصور ومقاطع الفيديو المُشارَكة.}}",
|
||||
@@ -1781,12 +1860,14 @@
|
||||
"sort_created": "تاريخ الإنشاء",
|
||||
"sort_items": "عدد العناصر",
|
||||
"sort_modified": "تم تعديل التاريخ",
|
||||
"sort_newest": "احدث صورة",
|
||||
"sort_oldest": "أقدم صورة",
|
||||
"sort_people_by_similarity": "رتب الأشخاص حسب التشابه",
|
||||
"sort_recent": "أحدث صورة",
|
||||
"sort_title": "العنوان",
|
||||
"source": "المصدر",
|
||||
"stack": "تجميع",
|
||||
"stack_action_prompt": "{count} مكدسة",
|
||||
"stack_duplicates": "تجميع النسخ المكررة",
|
||||
"stack_select_one_photo": "حدد صورة رئيسية واحدة للمجموعة",
|
||||
"stack_selected_photos": "كدس الصور المحددة",
|
||||
@@ -1806,6 +1887,7 @@
|
||||
"storage_quota": "حصة الخزن",
|
||||
"storage_usage": "{used} من {available} مُستخْدم",
|
||||
"submit": "إرسال",
|
||||
"success": "تم بنجاح",
|
||||
"suggestions": "اقتراحات",
|
||||
"sunrise_on_the_beach": "شروق الشمس على الشاطئ",
|
||||
"support": "الدعم",
|
||||
@@ -1815,6 +1897,8 @@
|
||||
"sync": "مزامنة",
|
||||
"sync_albums": "مزامنة الالبومات",
|
||||
"sync_albums_manual_subtitle": "مزامنة جميع الفديوهات والصور المرفوعة الى البومات الخزن الاحتياطي المختارة",
|
||||
"sync_local": "مزامنة الملفات المحلية",
|
||||
"sync_remote": "مزامنة الملفات البعيدة",
|
||||
"sync_upload_album_setting_subtitle": "انشئ و ارفع صورك و فديوهاتك الالبومات المختارة في Immich",
|
||||
"tag": "العلامة",
|
||||
"tag_assets": "أصول العلامة",
|
||||
@@ -1825,6 +1909,7 @@
|
||||
"tag_updated": "تم تحديث العلامة: {tag}",
|
||||
"tagged_assets": "تم وضع علامة {count, plural, one {# asset} other {# assets}}",
|
||||
"tags": "العلامات",
|
||||
"tap_to_run_job": "انقر لتشغيل المهمة",
|
||||
"template": "النموذج",
|
||||
"theme": "مظهر",
|
||||
"theme_selection": "اختيار السمة",
|
||||
@@ -1897,15 +1982,20 @@
|
||||
"unselect_all_duplicates": "إلغاء تحديد كافة النسخ المكررة",
|
||||
"unselect_all_in": "إلغاء تحديد الكل في {group}",
|
||||
"unstack": "فك الكومه",
|
||||
"unstack_action_prompt": "تم ازالة تكديس {count}",
|
||||
"unstacked_assets_count": "تم إخراج {count, plural, one {# الأصل} other {# الأصول}} من التكديس",
|
||||
"untagged": "غير مُعَلَّم",
|
||||
"up_next": "التالي",
|
||||
"updated_at": "تم التحديث",
|
||||
"updated_password": "تم تحديث كلمة المرور",
|
||||
"upload": "رفع",
|
||||
"upload_action_prompt": "{count} ملف في قائمة الانتظار للرفع",
|
||||
"upload_concurrency": "الرفع المتزامن",
|
||||
"upload_details": "تفاصيل الرفع",
|
||||
"upload_dialog_info": "هل تريد النسخ الاحتياطي للأصول (الأصول) المحددة إلى الخادم؟",
|
||||
"upload_dialog_title": "تحميل الأصول",
|
||||
"upload_errors": "إكتمل الرفع مع {count, plural, one {# خطأ} other {# أخطاء}}, قم بتحديث الصفحة لرؤية المحتويات الجديدة التي تم رفعها.",
|
||||
"upload_finished": "تم الانتهاء من الرفع",
|
||||
"upload_progress": "متبقية {remaining, number} - معالجة {processed, number}/{total, number}",
|
||||
"upload_skipped_duplicates": "تم تخطي {count, plural, one {# محتوى مكرر} other {# محتويات مكررة }}",
|
||||
"upload_status_duplicates": "التكرارات",
|
||||
@@ -1914,6 +2004,7 @@
|
||||
"upload_success": "تم الرفع بنجاح، قم بتحديث الصفحة لرؤية المحتويات المرفوعة الجديدة.",
|
||||
"upload_to_immich": "الرفع الىImmich ({count})",
|
||||
"uploading": "جاري الرفع",
|
||||
"uploading_media": "رفع الوسائط",
|
||||
"url": "عنوان URL",
|
||||
"usage": "الاستخدام",
|
||||
"use_biometric": "استخدم البايومتري",
|
||||
@@ -1934,6 +2025,7 @@
|
||||
"user_usage_stats_description": "عرض إحصائيات استخدام الحساب",
|
||||
"username": "اسم المستخدم",
|
||||
"users": "المستخدمين",
|
||||
"users_added_to_album_count": "تم اضافة{count, plural, one {# مستخدم} other {# مستخدمين}} الى الالبوم",
|
||||
"utilities": "أدوات",
|
||||
"validate": "تحقْق",
|
||||
"validate_endpoint_error": "الرجاء ادخال عنوان URL صالح",
|
||||
@@ -1952,6 +2044,7 @@
|
||||
"view_album": "عرض الألبوم",
|
||||
"view_all": "عرض الكل",
|
||||
"view_all_users": "عرض كافة المستخدمين",
|
||||
"view_details": "رؤية التفاصيل",
|
||||
"view_in_timeline": "عرض في الجدول الزمني",
|
||||
"view_link": "عرض الرابط",
|
||||
"view_links": "عرض الروابط",
|
||||
|
||||
126
i18n/be.json
@@ -6,7 +6,7 @@
|
||||
"action": "Дзеянне",
|
||||
"action_common_update": "Абнавіць",
|
||||
"actions": "Дзеянні",
|
||||
"active": "Актыўны",
|
||||
"active": "Актыўных",
|
||||
"activity": "Актыўнасць",
|
||||
"activity_changed": "Актыўнасць {enabled, select, true {уключана} other {адключана}}",
|
||||
"add": "Дадаць",
|
||||
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "Дадаць месца",
|
||||
"add_a_name": "Дадаць імя",
|
||||
"add_a_title": "Дадаць загаловак",
|
||||
"add_birthday": "Дадаць дзень нараджэння",
|
||||
"add_endpoint": "Дадаць кропку доступу",
|
||||
"add_exclusion_pattern": "Дадаць шаблон выключэння",
|
||||
"add_import_path": "Дадаць шлях імпарту",
|
||||
@@ -44,6 +45,10 @@
|
||||
"backup_database": "Стварыць рэзервовую копію базы даных",
|
||||
"backup_database_enable_description": "Уключыць рэзерваванне базы даных",
|
||||
"backup_keep_last_amount": "Колькасць папярэдніх рэзервовых копій для захавання",
|
||||
"backup_onboarding_1_description": "зняшняя копія ў воблаку або ў іншым фізічным месцы.",
|
||||
"backup_onboarding_2_description": "лакальныя копіі на іншых прыладах. Гэта ўключае ў сябе асноўныя файлы і лакальную рэзервовую копію гэтых файлаў.",
|
||||
"backup_onboarding_parts_title": "Рэзервовая копія «3-2-1» уключае ў сябе:",
|
||||
"backup_onboarding_title": "Рэзервовыя копіі",
|
||||
"backup_settings": "Налады рэзервовага капіявання",
|
||||
"backup_settings_description": "Кіраванне наладамі рэзервавання базы даных.",
|
||||
"cleared_jobs": "Ачышчаны заданні для: {job}",
|
||||
@@ -56,14 +61,14 @@
|
||||
"confirm_user_pin_code_reset": "Вы ўпэўнены ў тым, што жадаеце скінуць PIN-код {user}?",
|
||||
"create_job": "Стварыць заданне",
|
||||
"cron_expression": "Выраз Cron",
|
||||
"cron_expression_description": "Усталюйце інтэрвал сканавання, выкарыстоўваючы фармат cron. Для атрымання дадатковай інфармацыі, калі ласка, звярніцеся, напрыклад, да <link>Crontab Guru</link>",
|
||||
"cron_expression_description": "Задайце інтэрвал сканавання, выкарыстоўваючы фармат cron. Для атрымання дадатковай інфармацыі, звярніцеся, напрыклад, да <link>Crontab Guru</link>",
|
||||
"cron_expression_presets": "Прадустаноўкі выразаў Cron",
|
||||
"disable_login": "Адключыць уваход",
|
||||
"duplicate_detection_job_description": "Запусціць машыннае навучанне на актывах для выяўлення падобных выяў. Залежыць ад Smart Search",
|
||||
"exclusion_pattern_description": "Шаблоны выключэння дазваляюць ігнараваць файлы і папкі пры сканаванні вашай бібліятэкі. Гэта карысна, калі ў вас ёсць папкі, якія змяшчаюць файлы, якія вы не хочаце імпартаваць, напрыклад, файлы RAW.",
|
||||
"external_library_management": "Кіраванне знешняй бібліятэкай",
|
||||
"face_detection": "Выяўленне твараў",
|
||||
"face_detection_description": "Выяўляць твары на фотаздымках і відэа з дапамогай машыннага навучання. Для відэа ўлічваецца толькі мініяцюра. \"Абнавіць\" (пера)апрацоўвае ўсе медыя. \"Скінуць\" дадаткова ачышчае ўсе бягучыя дадзеныя пра твары. \"Адсутнічае\" ставіць у чаргу медыя, якія яшчэ не былі апрацаваныя. Выяўленыя твары будуць пастаўлены ў чаргу для распазнавання асоб пасля завяршэння выяўлення твараў, з групаваннем іх па існуючых або новых людзях.",
|
||||
"face_detection_description": "Выяўляць твары на фотаздымках і відэа з дапамогай машыннага навучання. Для відэа ўлічваецца толькі мініяцюра. \"Абнавіць\" (пера)апрацоўвае ўсе медыя. \"Скінуць\" дадаткова ачышчае ўсе бягучыя даныя пра твары. \"Адсутнічае\" ставіць у чаргу медыя, якія яшчэ не былі апрацаваныя. Выяўленыя твары будуць пастаўлены ў чаргу для распазнавання асоб пасля завяршэння выяўлення твараў, з групаваннем іх па існуючых або новых людзях.",
|
||||
"facial_recognition_job_description": "Групаваць выяўленыя твары па асобах. Гэты этап выконваецца пасля завяршэння выяўлення твараў. \"Скінуць\" (паўторна) перагрупоўвае ўсе твары. \"Адсутнічае\" ставіць у чаргу твары, якія яшчэ не прыпісаныя да якой-небудзь асобы.",
|
||||
"failed_job_command": "Каманда {command} не выканалася для задання: {job}",
|
||||
"force_delete_user_warning": "ПАПЯРЭДЖАННЕ: Гэта дзеянне неадкладна выдаліць карыстальніка і ўсе аб'екты. Гэта дзеянне не можа быць адроблена і файлы немагчыма будзе аднавіць.",
|
||||
@@ -74,15 +79,40 @@
|
||||
"image_fullsize_enabled_description": "Ствараць выяву ў поўным памеры для фарматаў, што не прыдатныя для вэб. Калі ўключана опцыя \"Аддаваць перавагу ўбудаванай праяве\", прагляды выкарыстоўваюцца непасрэдна без канвертацыі. Не ўплывае на вэб-прыдатныя фарматы, такія як JPEG.",
|
||||
"image_fullsize_quality_description": "Якасць выявы ў поўным памеры ад 1 да 100. Больш высокае значэнне лепшае, але прыводзіць да павелічэння памеру файла.",
|
||||
"image_fullsize_title": "Налады выявы ў поўным памеры",
|
||||
"image_prefer_embedded_preview_setting_description": "Выкарыстоўваць убудаваныя праявы ў RAW-фотаздымках ў якасці ўваходных дадзеных для апрацоўкі малюнкаў, калі магчыма. Гэта дазваляе атрымаць больш дакладныя колеры для некаторых відарысаў, але ж якасць праяў залежыць ад камеры, і на відарысе можа быць больш артэфактаў сціску.",
|
||||
"image_prefer_embedded_preview": "Аддаваць перавагу ўбудаванай праяве",
|
||||
"image_prefer_embedded_preview_setting_description": "Выкарыстоўваць убудаваныя праявы ў RAW-фотаздымках ў якасці ўваходных даных для апрацоўкі малюнкаў, калі магчыма. Гэта дазваляе атрымаць больш дакладныя колеры для некаторых відарысаў, але ж якасць праяў залежыць ад камеры, і на відарысе можа быць больш артэфактаў сціску.",
|
||||
"image_prefer_wide_gamut": "Аддаць перавагу шырокай гаме",
|
||||
"image_preview_description": "Відарыс сярэдняга памеру з выдаленымі метаданымі, выкарыстоўваецца пры праглядзе асобнага рэсурсу і для машыннага навучання",
|
||||
"image_preview_quality_description": "Якасць праявы ад 1 да 100. Чым вышэй, тым лепш, але пры гэтым ствараюцца файлы большага памеру і можа знізіцца хуткасць водгуку прыкладання. Ўстаноўка нізкага значэння можа паўплываць на якасць машыннага навучання.",
|
||||
"image_preview_title": "Налады папярэдняга прагляду",
|
||||
"image_quality": "Якасць",
|
||||
"image_resolution": "Раздзяляльнасць",
|
||||
"image_settings": "Налады відарыса",
|
||||
"image_settings_description": "Кіруйце якасцю і раздзяляльнасцю сгенерыраваных відарысаў",
|
||||
"image_thumbnail_title": "Налады мініяцюр",
|
||||
"job_concurrency": "{job} канкурэнтнасць",
|
||||
"job_created": "Заданне створана",
|
||||
"job_not_concurrency_safe": "Гэта заданне небяспечнае для канкурэнтнага(адначасовага, паралельнага) выканання.",
|
||||
"job_settings": "Налады заданняў",
|
||||
"job_settings_description": "Кіраваць наладамі адначасовага (паралельнага) выканання задання",
|
||||
"job_status": "Становішча задання",
|
||||
"library_created": "Створана бібліятэка: {library}",
|
||||
"library_deleted": "Бібліятэка выдалена",
|
||||
"library_scanning": "Сканаванне па раскладзе",
|
||||
"library_scanning_description": "Наладзьце параметры сканавання вашай бібліятэкі",
|
||||
"library_scanning_enable_description": "Уключыць сканаванне бібліятэкі па раскладзе",
|
||||
"library_settings": "Знешняя бібліятэка",
|
||||
"library_settings_description": "Наладзьце параметры знешняй бібліятэкі",
|
||||
"library_tasks_description": "Сканаваць знешнія бібліятэкі на наяўнасць новых і/або змененых рэсурсаў",
|
||||
"library_watching_enable_description": "Назіраць за зменамі файлаў у знешніх бібліятэках",
|
||||
"library_watching_settings": "Сачыць за бібліятэкай (эксперыментальны)",
|
||||
"library_watching_settings_description": "Аўтаматычна сачыць за зменамі ў файлах",
|
||||
"logging_enable_description": "Уключыць вядзенне журнала",
|
||||
"logging_level_description": "Калі уключана, які ўзровень журналявання выкарыстоўваць.",
|
||||
"logging_settings": "Вядзенне журнала",
|
||||
"machine_learning_clip_model": "CLIP мадэль",
|
||||
"machine_learning_clip_model_description": "Назва CLIP мадэлі паказана <link>тут</link>. Звярніце ўвагу, што пры змене мадэлі неабходна паўторна запусціць заданне \"Smart Search\" для ўсіх відарысаў.",
|
||||
"machine_learning_duplicate_detection": "Выяўленне падобных",
|
||||
"map_dark_style": "Цёмны стыль",
|
||||
"map_enable_description": "Уключыць функцыі карты",
|
||||
"map_gps_settings": "Налады карты і GPS",
|
||||
@@ -93,33 +123,119 @@
|
||||
"metadata_settings": "Налады метаданых",
|
||||
"oauth_button_text": "Тэкст кнопкі",
|
||||
"oauth_settings": "OAuth",
|
||||
"refreshing_all_libraries": "Абнаўленне ўсіх бібліятэк",
|
||||
"registration": "Рэгістрацыя адміністратара",
|
||||
"registration_description": "Вы з'яўляецеся першым карыстальнікам сістэмы, таму вы будзеце прызначаны адміністратарам. Вы будзеце адказваць за адміністрацыйныя задачы, а таксама ствараць новых карыстальнікаў.",
|
||||
"require_password_change_on_login": "Патрабаваць змяніць пароль пры першым уваходзе ў сістэму",
|
||||
"reset_settings_to_default": "Скінуць налады да прадвызначаных",
|
||||
"reset_settings_to_recent_saved": "Скінуць налады да нядаўна захаваных",
|
||||
"scanning_library": "Сканіраванне бібліятэкі",
|
||||
"server_external_domain_settings": "Знешні дамен",
|
||||
"server_settings": "Налады сервера",
|
||||
"server_settings_description": "Кіраванне наладамі сервера",
|
||||
"server_welcome_message": "Прывітальнае паведамленне",
|
||||
"server_welcome_message_description": "Паведамленне, якое адлюстроўваецца на старонцы ўваходу.",
|
||||
"system_settings": "Сістэмныя налады",
|
||||
"tag_cleanup_job": "Ачыстка тэгаў",
|
||||
"template_email_preview": "Перадпрагляд",
|
||||
"theme_settings": "Налады тэмы",
|
||||
"transcoding_acceleration_nvenc": "NVENC (патрабуецца відэакарта NVIDIA)",
|
||||
"transcoding_acceleration_vaapi": "VAAPI",
|
||||
"transcoding_accepted_containers": "Прынятыя кантэйнеры",
|
||||
"transcoding_accepted_video_codecs": "Прынятыя відэакодэкі",
|
||||
"transcoding_advanced_options_description": "Параметры, якія большасці карыстальнікаў не трэба змяняць",
|
||||
"transcoding_audio_codec": "Аудыякодэк",
|
||||
"transcoding_encoding_options": "Параметры кадзіравання",
|
||||
"transcoding_video_codec": "Відэакодэк",
|
||||
"trash_enabled_description": "Уключыць функцыі сметніцы",
|
||||
"trash_number_of_days": "Колькасць дзён",
|
||||
"trash_settings": "Налады сметніцы",
|
||||
"trash_settings_description": "Кіраванне наладамі сметніцы",
|
||||
"user_cleanup_job": "Ачыстка карыстальніка",
|
||||
"user_management": "Кіраванне карыстальнікамі",
|
||||
"user_password_has_been_reset": "Пароль карыстальніка быў скінуты:",
|
||||
"user_password_reset_description": "Задайце карыстальніку часовы пароль і паведаміце яму, што пры наступным уваходзе ў сістэму яму трэба будзе змяніць пароль.",
|
||||
"user_restore_description": "Уліковы запіс карыстальніка <b>{user}</b> будзе адноўлены.",
|
||||
"user_settings": "Налады карыстальніка",
|
||||
"user_settings_description": "Кіраванне наладамі карыстальніка",
|
||||
"user_successfully_removed": "Карыстальнік {email} быў паспяхова выдалены.",
|
||||
"version_check_enabled_description": "Уключыць праверку версіі",
|
||||
"version_check_implications": "Функцыя праверкі версіі перыядычна звяртаецца да github.com",
|
||||
"version_check_settings": "Праверка версіі",
|
||||
"version_check_settings_description": "Уключыць/адключыць апавяшчэнні аб новай версіі"
|
||||
},
|
||||
"admin_email": "Электронная пошта адміністратара",
|
||||
"admin_password": "Пароль адміністратара",
|
||||
"administration": "Кіраванне серверам",
|
||||
"advanced": "Пашыраныя",
|
||||
"advanced_settings_log_level_title": "Узровень вядзення журнала: {level}",
|
||||
"advanced_settings_proxy_headers_title": "Загалоўкі проксі",
|
||||
"advanced_settings_tile_subtitle": "Пашыраныя налады карыстальніка",
|
||||
"advanced_settings_troubleshooting_subtitle": "Уключыць дадатковыя функцыі для выпраўлення непаладак",
|
||||
"advanced_settings_troubleshooting_title": "Выпраўленне непаладак",
|
||||
"age_months": "Узрост {months, plural, one {# месяц} few {# месяцы} many {# месяцаў} other {# месяцаў}}",
|
||||
"age_year_months": "Узрост 1 год, {months, plural, one {# месяц} few {# месяцы} many {# месяцаў} other {# месяцаў}}",
|
||||
"age_years": "{years, plural, other {Узрост #}}",
|
||||
"album_added": "Альбом дададзены",
|
||||
"album_cover_updated": "Вокладка альбома абноўлена",
|
||||
"album_delete_confirmation": "Вы ўпэўнены, што хочаце выдаліць альбом {album}?",
|
||||
"album_delete_confirmation_description": "Калі гэты альбом абагулены, іншыя карыстальнікі больш не змогуць атрымаць да яго доступ.",
|
||||
"album_deleted": "Альбом выдалены",
|
||||
"album_info_card_backup_album_excluded": "ВЫКЛЮЧАНЫ",
|
||||
"album_info_card_backup_album_included": "УКЛЮЧАНЫ",
|
||||
"album_info_updated": "Інфармацыя пра альбом абноўлена",
|
||||
"album_leave": "Пакінуць альбом?",
|
||||
"album_leave_confirmation": "Вы ўпэўнены, што хочаце пакінуць {album}?",
|
||||
"album_name": "Назва альбома",
|
||||
"album_options": "Параметры альбома",
|
||||
"album_remove_user": "Выдаліць карыстальніка?",
|
||||
"album_remove_user_confirmation": "Вы ўпэўнены, што хочаце выдаліць {user}?",
|
||||
"album_search_not_found": "Па вашым запыце не знойдзена альбомаў",
|
||||
"album_share_no_users": "Здаецца, вы падзяліліся гэтым альбомам з усімі карыстальнікамі, або ў вас няма ніводнага карыстальніка, з якім можна падзяліцца.",
|
||||
"album_updated": "Альбом абноўлены",
|
||||
"album_user_left": "Вы пакінулі {album}",
|
||||
"album_user_removed": "Карыстальнік {user} выдалены",
|
||||
"album_viewer_appbar_delete_confirm": "Вы ўпэўнены, што хочаце выдаліць гэты альбом са свайго ўліковага запісу?",
|
||||
"album_viewer_appbar_share_err_delete": "Не ўдалося выдаліць альбом",
|
||||
"album_viewer_appbar_share_err_leave": "Не ўдалося пакінуць альбом",
|
||||
"album_viewer_appbar_share_err_title": "Не ўдалося змяніць назву альбома",
|
||||
"album_viewer_appbar_share_leave": "Пакінуць альбом",
|
||||
"album_viewer_appbar_share_to": "Абагуліць з",
|
||||
"album_viewer_page_share_add_users": "Дадаць карыстальнікаў",
|
||||
"album_with_link_access": "Дазволіць усім, хто мае спасылку, бачыць фота і людзей у гэтым альбоме.",
|
||||
"albums": "Альбомы",
|
||||
"albums_count": "{count, plural, one {1 альбом} few {{count, number} альбомы} many {{count, number} альбомаў} other {{count, number} альбомаў}}",
|
||||
"albums_default_sort_order": "Прадвызначаны парадак сартавання альбомаў",
|
||||
"albums_on_device_count": "Альбомы на прыладзе ({count})",
|
||||
"all": "Усе",
|
||||
"all_albums": "Усе альбомы",
|
||||
"all_people": "Усе людзі",
|
||||
"all_videos": "Усе відэа",
|
||||
"allow_dark_mode": "Дазволіць цёмны рэжым",
|
||||
"allow_edits": "Дазволіць рэдагаванне",
|
||||
"alt_text_qr_code": "Відарыс QR-кода",
|
||||
"anti_clockwise": "Супраць гадзіннікавай стрэлкі",
|
||||
"api_key": "Ключ API",
|
||||
"api_key_empty": "Назва ключа API не павінна быць пустой",
|
||||
"api_keys": "Ключы API",
|
||||
"app_bar_signout_dialog_content": "Вы ўпэўнены, што хочаце выйсці?",
|
||||
"app_bar_signout_dialog_ok": "Так",
|
||||
"app_bar_signout_dialog_title": "Выйсці",
|
||||
"app_settings": "Налады праграмы",
|
||||
"archive": "Архіў",
|
||||
"archive_page_title": "Архіў ({count})",
|
||||
"archive_size": "Памер архіва",
|
||||
"are_these_the_same_person": "Ці гэта адзін і той жа чалавек?",
|
||||
"are_you_sure_to_do_this": "Вы ўпэўнены, што хочаце гэта зрабіць?",
|
||||
"asset_added_to_album": "Дададзена ў альбом",
|
||||
"asset_adding_to_album": "Дадаванне ў альбом…",
|
||||
"asset_skipped": "Прапушчана",
|
||||
"asset_skipped_in_trash": "У сметніцы",
|
||||
"asset_uploaded": "Запампавана",
|
||||
"asset_uploading": "Запампоўванне…",
|
||||
"authorized_devices": "Аўтарызаваныя прылады",
|
||||
"back": "Назад",
|
||||
"backup_album_selection_page_albums_device": "Альбомы на прыладзе ({count})",
|
||||
"backup_all": "Усе",
|
||||
"backup_controller_page_background_wifi": "Толькі праз Wi-Fi",
|
||||
"buy": "Купіць Immich",
|
||||
@@ -368,7 +484,7 @@
|
||||
"view_all_users": "Праглядзець усех карыстальнікаў",
|
||||
"view_in_timeline": "Паглядзець хроніку",
|
||||
"view_links": "Праглядзець спасылкі",
|
||||
"view_name": "Прагледзець",
|
||||
"view_name": "Прагляд",
|
||||
"view_next_asset": "Паказаць наступны аб'ект",
|
||||
"view_previous_asset": "Праглядзець папярэдні аб'ект",
|
||||
"view_stack": "Прагляд стэка",
|
||||
|
||||
114
i18n/bg.json
@@ -13,20 +13,24 @@
|
||||
"add_a_description": "Добави описание",
|
||||
"add_a_location": "Добави местоположение",
|
||||
"add_a_name": "Добави име",
|
||||
"add_a_title": "Добавете заглавие",
|
||||
"add_a_title": "Добaви заглавие",
|
||||
"add_birthday": "Добави дата на раждане",
|
||||
"add_endpoint": "Добави крайна точка",
|
||||
"add_exclusion_pattern": "Добави модел за изключване",
|
||||
"add_import_path": "Добави път за импортиране",
|
||||
"add_location": "Добавете местоположение",
|
||||
"add_more_users": "Добавете още потребители",
|
||||
"add_partner": "Добавете партньор",
|
||||
"add_location": "Дoбави местоположение",
|
||||
"add_more_users": "Добави още потребители",
|
||||
"add_partner": "Добави партньор",
|
||||
"add_path": "Добави път",
|
||||
"add_photos": "Добавете снимки",
|
||||
"add_photos": "Добави снимки",
|
||||
"add_tag": "Добави маркер",
|
||||
"add_to": "Добави към…",
|
||||
"add_to_album": "Добави към албум",
|
||||
"add_to_album_bottom_sheet_added": "Добавено в {album}",
|
||||
"add_to_album_bottom_sheet_already_exists": "Вече е в {album}",
|
||||
"add_to_album_toggle": "Сменете избора за {album}",
|
||||
"add_to_albums": "Добавяне в албуми",
|
||||
"add_to_albums_count": "Добавяне в албуми ({count})",
|
||||
"add_to_shared_album": "Добави към споделен албум",
|
||||
"add_url": "Добави URL",
|
||||
"added_to_archive": "Добавено към архива",
|
||||
@@ -44,6 +48,13 @@
|
||||
"backup_database": "Създай резервна база данни",
|
||||
"backup_database_enable_description": "Разреши резервни копия на базата данни",
|
||||
"backup_keep_last_amount": "Брой запазени резервни копия",
|
||||
"backup_onboarding_1_description": "копие на облака или друго физическо място.",
|
||||
"backup_onboarding_2_description": "локални копия на различни устройства. Това включва основните файлове и локални архиви на тези файлове.",
|
||||
"backup_onboarding_3_description": "общо копия на вашите данни, включитено оригиналните файлове. Това включва 1 копие извън системата и 2 локални копия.",
|
||||
"backup_onboarding_description": "За надеждна защита препоръчваме стратегията <backblaze-link>3-2-1</backblaze-link>. Правете архивни копия както на качените снимки/видеа, така и на базата данни на Immich.",
|
||||
"backup_onboarding_footer": "За подробна информация относно архивирането в Immich, моля вижте в <link>документацията</link>.",
|
||||
"backup_onboarding_parts_title": "Стратегията 3-2-1 включва:",
|
||||
"backup_onboarding_title": "Резервни копия",
|
||||
"backup_settings": "Настройка на резервни копия на базата данни",
|
||||
"backup_settings_description": "Управление на настройките за резервно копие на базата данни.",
|
||||
"cleared_jobs": "Изчистени задачи от тип: {job}",
|
||||
@@ -347,6 +358,9 @@
|
||||
"trash_number_of_days_description": "Брой дни, в които файловете да се съхраняват на боклука, преди да бъдат окончателно премахнати",
|
||||
"trash_settings": "Настройки на кошчето",
|
||||
"trash_settings_description": "Управление на настройките на кошчето",
|
||||
"unlink_all_oauth_accounts": "Прекрати вписването на всички OAuth профили",
|
||||
"unlink_all_oauth_accounts_description": "Не забравяйте да прекратите вписването на всички OAuth профили преди да мигрирате към нов доставчик.",
|
||||
"unlink_all_oauth_accounts_prompt": "Сигурни ли сте, че искате да отпишете всички OAuth профили? Това ще нулира OAuth ID за всеки потребител и не може да бъде отменено.",
|
||||
"user_cleanup_job": "Почистване на потребители",
|
||||
"user_delete_delay": "<b>{user}</b> aкаунтът и файловете на потребителя ще бъдат планирани за постоянно изтриване след {delay, plural, one {# ден} other {# дни}}.",
|
||||
"user_delete_delay_settings": "Забавяне на изтриване",
|
||||
@@ -397,6 +411,7 @@
|
||||
"album_cover_updated": "Обложката на албума е актуализирана",
|
||||
"album_delete_confirmation": "Сигурни ли сте, че искате да изтриете албума {album}?",
|
||||
"album_delete_confirmation_description": "Ако този албум е споделен, други потребители вече няма да имат достъп до него.",
|
||||
"album_deleted": "Албума е изтрит",
|
||||
"album_info_card_backup_album_excluded": "ИЗКЛЮЧЕН",
|
||||
"album_info_card_backup_album_included": "ВКЛЮЧЕН",
|
||||
"album_info_updated": "Информацията за албума е актуализирана",
|
||||
@@ -406,6 +421,7 @@
|
||||
"album_options": "Настройки на албума",
|
||||
"album_remove_user": "Премахване на потребител?",
|
||||
"album_remove_user_confirmation": "Сигурни ли сте, че искате да премахнете {user}?",
|
||||
"album_search_not_found": "Няма намерени албуми, отговарящи на търсенето ви",
|
||||
"album_share_no_users": "Изглежда, че сте споделили този албум с всички потребители или нямате друг потребител, с когото да го споделите.",
|
||||
"album_updated": "Албумът е актуализиран",
|
||||
"album_updated_setting_description": "Получавайте известие по имейл, когато споделен албум има нови файлове",
|
||||
@@ -425,6 +441,7 @@
|
||||
"albums_default_sort_order": "Ред по подразбиране за сортиране на албуми",
|
||||
"albums_default_sort_order_description": "Първоначален ред на сортиране при създаване на нов албум.",
|
||||
"albums_feature_description": "Колекции от обекти, които могат да бъдат споделяни с други поребители.",
|
||||
"albums_on_device_count": "Албуми на устройството ({count})",
|
||||
"all": "Всички",
|
||||
"all_albums": "Всички албуми",
|
||||
"all_people": "Всички хора",
|
||||
@@ -483,7 +500,9 @@
|
||||
"assets": "Елементи",
|
||||
"assets_added_count": "Добавено {count, plural, one {# asset} other {# assets}}",
|
||||
"assets_added_to_album_count": "Добавен(и) са {count, plural, one {# актив} other {# актива}} в албума",
|
||||
"assets_added_to_albums_count": "Добавени са {assetTotal} обекта в {albumTotal} албума",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {Обекта не може да се добави} other {Обектите не може да се добавят}} в албума",
|
||||
"assets_cannot_be_added_to_albums": "{count, plural, one {обект не може да бъде добавен} other {обекта не могат да бъдат добавени}} в никой от албумите",
|
||||
"assets_count": "{count, plural, one {# актив} other {# актива}}",
|
||||
"assets_deleted_permanently": "{count} обекта са изтрити завинаги",
|
||||
"assets_deleted_permanently_from_server": "{count} обекта са изтити от Immich сървъра завинаги",
|
||||
@@ -500,6 +519,7 @@
|
||||
"assets_trashed_count": "Възстановен(и) са {count, plural, one {# файл} other {# файла}}",
|
||||
"assets_trashed_from_server": "{count} обекта са преместени в коша на Immich сървъра",
|
||||
"assets_were_part_of_album_count": "{count, plural, one {Файлът е} other {Файловете са}} вече част от албума",
|
||||
"assets_were_part_of_albums_count": "{count, plural, one {обект вече е} other {обекта вече са}} част от албумите",
|
||||
"authorized_devices": "Удостоверени устройства",
|
||||
"automatic_endpoint_switching_subtitle": "Когато е достъпна, използвай посочената Wi-Fi мрежа, иначе използвай алтернативни връзки",
|
||||
"automatic_endpoint_switching_title": "Автоматично превключване на URL",
|
||||
@@ -508,6 +528,7 @@
|
||||
"back_close_deselect": "Назад, затваряне или премахване на избора",
|
||||
"background_location_permission": "Разрешение за достъп до местоположението във фонов режим",
|
||||
"background_location_permission_content": "За да може да чете имената на Wi-Fi мрежите и да ги превключва при работа във фонов режим, Immich трябва *винаги* да има достъп до точното местоположение",
|
||||
"backup": "Архивиране",
|
||||
"backup_album_selection_page_albums_device": "Албуми на устройството ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Натисни за да включиш, двойно за да изключиш",
|
||||
"backup_album_selection_page_assets_scatter": "Обектите могат да бъдат разпръснати в няколко албума. По този начин албумите могат да бъдат включени или изключени по време на процеса на архивиране.",
|
||||
@@ -568,9 +589,13 @@
|
||||
"backup_manual_in_progress": "Върви архивиране. Опитай след малко",
|
||||
"backup_manual_success": "Успешно",
|
||||
"backup_manual_title": "Състояние на архивирането",
|
||||
"backup_options": "Опции за архивиране",
|
||||
"backup_options_page_title": "Настройки за архивиране",
|
||||
"backup_setting_subtitle": "Управлявай настройките за архивиране в активен и фонов режим",
|
||||
"backup_settings_subtitle": "Управление на настройките за качване",
|
||||
"backward": "Назад",
|
||||
"beta_sync": "Статус на бета синхронизацията",
|
||||
"beta_sync_subtitle": "Управление на новата система за синхронизация",
|
||||
"biometric_auth_enabled": "Включена биометрично удостоверяване",
|
||||
"biometric_locked_out": "Няма достъп до биометрично удостоверяване",
|
||||
"biometric_no_options": "Няма биометрична автентикация",
|
||||
@@ -588,7 +613,7 @@
|
||||
"cache_settings_clear_cache_button": "Изчисти кеша",
|
||||
"cache_settings_clear_cache_button_title": "Изчиства кеша на приложението. Това ще повлияе производителността на приложението докато кеша не бъде създаден отново.",
|
||||
"cache_settings_duplicated_assets_clear_button": "ИЗЧИСТИ",
|
||||
"cache_settings_duplicated_assets_subtitle": "Снимки и видеа, които са в Черния списък на приложението",
|
||||
"cache_settings_duplicated_assets_subtitle": "Снимки и видеа, които са в Списъка за игнориране от приложението",
|
||||
"cache_settings_duplicated_assets_title": "Дублирани обекти ({count})",
|
||||
"cache_settings_statistics_album": "Библиотека с миниатюри",
|
||||
"cache_settings_statistics_full": "Пълни изображения",
|
||||
@@ -605,6 +630,7 @@
|
||||
"cancel": "Откажи",
|
||||
"cancel_search": "Отмени търсенето",
|
||||
"canceled": "Отменено",
|
||||
"canceling": "Анулиране",
|
||||
"cannot_merge_people": "Не може да обединява хора",
|
||||
"cannot_undo_this_action": "Не можете да отмените това действие!",
|
||||
"cannot_update_the_description": "Описанието не може да бъде актуализирано",
|
||||
@@ -636,6 +662,7 @@
|
||||
"clear": "Изчисти",
|
||||
"clear_all": "Изчисти всичко",
|
||||
"clear_all_recent_searches": "Изчистете всички скорошни търсения",
|
||||
"clear_file_cache": "Изчистване на кеша на файловете",
|
||||
"clear_message": "Изчисти съобщението",
|
||||
"clear_value": "Изчисти стойността",
|
||||
"client_cert_dialog_msg_confirm": "ОК",
|
||||
@@ -706,6 +733,7 @@
|
||||
"create_new_user": "Създаване на нов потребител",
|
||||
"create_shared_album_page_share_add_assets": "ДОБАВИ ОБЕКТИ",
|
||||
"create_shared_album_page_share_select_photos": "Избери снимки",
|
||||
"create_shared_link": "Създай линк за споделяне",
|
||||
"create_tag": "Създай таг",
|
||||
"create_tag_description": "Създайте нов таг. За вложени тагове, моля, въведете пълния път на тага, включително наклонените черти.",
|
||||
"create_user": "Създай потребител",
|
||||
@@ -718,6 +746,7 @@
|
||||
"current_server_address": "Настоящ адрес на сървъра",
|
||||
"custom_locale": "Персонализиран локал",
|
||||
"custom_locale_description": "Форматиране на дати и числа в зависимост от езика и региона",
|
||||
"custom_url": "Персонализиран URL адрес",
|
||||
"daily_title_text_date": "E, dd MMM",
|
||||
"daily_title_text_date_year": "E, dd MMM yyyy",
|
||||
"dark": "Тъмен",
|
||||
@@ -729,6 +758,7 @@
|
||||
"date_of_birth_saved": "Дата на раждане е записана успешно",
|
||||
"date_range": "Период от време",
|
||||
"day": "Ден",
|
||||
"days": "Дни",
|
||||
"deduplicate_all": "Дедупликиране на всички",
|
||||
"deduplication_criteria_1": "Размер на снимката в байтове",
|
||||
"deduplication_criteria_2": "Брой EXIF данни",
|
||||
@@ -737,7 +767,8 @@
|
||||
"default_locale": "Локализация по подразбиране",
|
||||
"default_locale_description": "Форматиране на дати и числа в зависимост от езиковата настройка на браузъра",
|
||||
"delete": "Изтрий",
|
||||
"delete_action_prompt": "{count} са изтрити завинаги",
|
||||
"delete_action_confirmation_message": "Сигурни ли сте, че искате да изтриете този обект? Следва преместване на обекта в коша за отпадъци на сървъра и ще получите предложение обекта да бъде изтрит локално",
|
||||
"delete_action_prompt": "{count} са изтрити",
|
||||
"delete_album": "Изтрий албум",
|
||||
"delete_api_key_prompt": "Сигурни ли сте, че искате да изтриете този API ключ?",
|
||||
"delete_dialog_alert": "Тези обекти ще бъдат изтрити завинаги и от Immich сървъра и от устройството",
|
||||
@@ -755,6 +786,8 @@
|
||||
"delete_local_dialog_ok_backed_up_only": "Изтрий локално само архивираните",
|
||||
"delete_local_dialog_ok_force": "Въпреки това изтрий",
|
||||
"delete_others": "Изтрий останалите",
|
||||
"delete_permanently": "Изтрий за постоянно",
|
||||
"delete_permanently_action_prompt": "{count} изтрити за постоянно",
|
||||
"delete_shared_link": "Изтриване на споделен линк",
|
||||
"delete_shared_link_dialog_title": "Изтрий споделената връзка",
|
||||
"delete_tag": "Изтрий таг",
|
||||
@@ -765,6 +798,7 @@
|
||||
"description": "Описание",
|
||||
"description_input_hint_text": "Добави описание...",
|
||||
"description_input_submit_error": "Неуспешно обновяване на описанието. За подробности вижте в дневника",
|
||||
"deselect_all": "Премахни избора от всички",
|
||||
"details": "Детайли",
|
||||
"direction": "Посока",
|
||||
"disabled": "Изключено",
|
||||
@@ -809,8 +843,12 @@
|
||||
"edit": "Редактиране",
|
||||
"edit_album": "Редактиране на албум",
|
||||
"edit_avatar": "Редактиране на аватар",
|
||||
"edit_birthday": "Редактиране на рожден ден",
|
||||
"edit_date": "Редактиране на дата",
|
||||
"edit_date_and_time": "Редактиране на дата и час",
|
||||
"edit_date_and_time_action_prompt": "{count} дата и време са редактирани",
|
||||
"edit_date_and_time_by_offset": "Промяна на датата чрез отместване",
|
||||
"edit_date_and_time_by_offset_interval": "Нов период от време: {from} - {to}",
|
||||
"edit_description": "Редактирай описание",
|
||||
"edit_description_prompt": "Моля, избери ново описание:",
|
||||
"edit_exclusion_pattern": "Редактиране на шаблон за изключване",
|
||||
@@ -839,6 +877,7 @@
|
||||
"empty_trash": "Изпразване на кош",
|
||||
"empty_trash_confirmation": "Сигурни ли сте, че искате да изпразните кошчето? Това ще премахне всичко в кошчето за постоянно от Immich.\nНе можете да отмените това действие!",
|
||||
"enable": "Включване",
|
||||
"enable_backup": "Включи резервното копиране",
|
||||
"enable_biometric_auth_description": "Въведете вашия PIN код, за да разрешите биометрично удостоверяване",
|
||||
"enabled": "Включено",
|
||||
"end_date": "Крайна дата",
|
||||
@@ -882,6 +921,7 @@
|
||||
"failed_to_load_notifications": "Неуспешно зареждане на известия",
|
||||
"failed_to_load_people": "Неуспешно зареждане на хора",
|
||||
"failed_to_remove_product_key": "Неуспешно премахване на продуктовия ключ",
|
||||
"failed_to_reset_pin_code": "Неуспешно нулиране на ПИН кода",
|
||||
"failed_to_stack_assets": "Неуспешно подреждане на обекти",
|
||||
"failed_to_unstack_assets": "Неуспешно премахване на подредбата на обекти",
|
||||
"failed_to_update_notification_status": "Неуспешно обновяване на състоянието на известията",
|
||||
@@ -890,6 +930,7 @@
|
||||
"paths_validation_failed": "{paths, plural, one {# път} other {# пътища}} не преминаха валидация",
|
||||
"profile_picture_transparent_pixels": "Профилните снимки не могат да имат прозрачни пиксели. Моля, увеличете и/или преместете изображението.",
|
||||
"quota_higher_than_disk_size": "Зададена е квота, по-голяма от размера на диска",
|
||||
"something_went_wrong": "Нещо се обърка",
|
||||
"unable_to_add_album_users": "Неуспешно добавяне на потребители в албум",
|
||||
"unable_to_add_assets_to_shared_link": "Неуспешно добавяне на обекти в споделен линк",
|
||||
"unable_to_add_comment": "Неуспешно добавяне на коментар",
|
||||
@@ -975,13 +1016,11 @@
|
||||
},
|
||||
"exif": "Exif",
|
||||
"exif_bottom_sheet_description": "Добави Описание...",
|
||||
"exif_bottom_sheet_description_error": "Неуспешно обновяване на описание",
|
||||
"exif_bottom_sheet_details": "ПОДРОБНОСТИ",
|
||||
"exif_bottom_sheet_location": "МЯСТО",
|
||||
"exif_bottom_sheet_people": "ХОРА",
|
||||
"exif_bottom_sheet_person_add_person": "Добави име",
|
||||
"exif_bottom_sheet_person_age_months": "Възраст {months} месеца",
|
||||
"exif_bottom_sheet_person_age_year_months": "Възраст 1 година и {months} месеца",
|
||||
"exif_bottom_sheet_person_age_years": "Възраст {years}",
|
||||
"exit_slideshow": "Изход от слайдшоуто",
|
||||
"expand_all": "Разшири всички",
|
||||
"experimental_settings_new_asset_list_subtitle": "В развитие",
|
||||
@@ -995,6 +1034,8 @@
|
||||
"explorer": "Преглед",
|
||||
"export": "Експорт",
|
||||
"export_as_json": "Експортиране като JSON",
|
||||
"export_database": "Експорт на базата данни",
|
||||
"export_database_description": "Експорт на базата данни SQLite",
|
||||
"extension": "Разширение",
|
||||
"external": "Външно",
|
||||
"external_libraries": "Външни библиотеки",
|
||||
@@ -1021,11 +1062,13 @@
|
||||
"filter_people": "Филтриране на хора",
|
||||
"filter_places": "Филтър по място",
|
||||
"find_them_fast": "Намерете ги бързо по име с търсене",
|
||||
"first": "Първи",
|
||||
"fix_incorrect_match": "Поправяне на неправилно съвпадение",
|
||||
"folder": "Папка",
|
||||
"folder_not_found": "Папката не е намерена",
|
||||
"folders": "Папки",
|
||||
"folders_feature_description": "Преглеждане на папката за снимките и видеоклиповете в файловата система",
|
||||
"forgot_pin_code_question": "Забравили сте своя ПИН код?",
|
||||
"forward": "Напред",
|
||||
"gcast_enabled": "Google Cast",
|
||||
"gcast_enabled_description": "За да работи тази функция зарежда външни ресурси от Google.",
|
||||
@@ -1046,6 +1089,9 @@
|
||||
"haptic_feedback_switch": "Включи тактилна обратна връзка",
|
||||
"haptic_feedback_title": "Тактилна обратна връзка",
|
||||
"has_quota": "Лимит",
|
||||
"hash_asset": "Обект с хеш",
|
||||
"hashed_assets": "Хеширани обекти",
|
||||
"hashing": "Хеширане",
|
||||
"header_settings_add_header_tip": "Добави заглавие",
|
||||
"header_settings_field_validator_msg": "Недопустимо е да няма стойност",
|
||||
"header_settings_header_name_input": "Име на заглавието",
|
||||
@@ -1077,7 +1123,9 @@
|
||||
"home_page_upload_err_limit": "Може да качвате максимум 30 обекта едновременно, пропускане",
|
||||
"host": "Хост",
|
||||
"hour": "Час",
|
||||
"hours": "Часа",
|
||||
"id": "ID",
|
||||
"idle": "Бездействие",
|
||||
"ignore_icloud_photos": "Пропусни снимки от iCloud",
|
||||
"ignore_icloud_photos_description": "Снимки, които са запазени в iCloud няма да се качват в Immich сървъра",
|
||||
"image": "Изображение",
|
||||
@@ -1135,10 +1183,13 @@
|
||||
"language_no_results_title": "Не са намерени езици",
|
||||
"language_search_hint": "Търсене на езици...",
|
||||
"language_setting_description": "Изберете предпочитан език",
|
||||
"large_files": "Големи файлове",
|
||||
"last": "Последен",
|
||||
"last_seen": "Последно видяно",
|
||||
"latest_version": "Последна версия",
|
||||
"latitude": "Ширина",
|
||||
"leave": "Излез",
|
||||
"leave_album": "Напускане на албума",
|
||||
"lens_model": "Модел леща",
|
||||
"let_others_respond": "Позволете на другите да отговорят",
|
||||
"level": "Ниво",
|
||||
@@ -1152,15 +1203,17 @@
|
||||
"library_page_sort_title": "Заглавие на албума",
|
||||
"licenses": "Лицензи",
|
||||
"light": "Светло",
|
||||
"like": "Харесайте",
|
||||
"like_deleted": "Като изтрит",
|
||||
"link_motion_video": "Линк към видео",
|
||||
"link_options": "Опции на линк за споделяне",
|
||||
"link_to_oauth": "Линк към OAuth",
|
||||
"linked_oauth_account": "Свързан OAuth акаунт",
|
||||
"list": "Лист",
|
||||
"loading": "Зареждане",
|
||||
"loading_search_results_failed": "Зареждането на резултатите от търсенето е неуспешно",
|
||||
"local": "Локално",
|
||||
"local_asset_cast_failed": "Не може да се предава обект, който още не е качен на сървъра",
|
||||
"local_assets": "Локални обекти",
|
||||
"local_network": "Локална мрежа",
|
||||
"local_network_sheet_info": "Приложението ще се свърже със сървъра на този URL, когато устройството е свързано към зададената Wi-Fi мрежа",
|
||||
"location_permission": "Разрешение за местоположение",
|
||||
@@ -1217,8 +1270,7 @@
|
||||
"manage_your_devices": "Управление на влезлите в системата устройства",
|
||||
"manage_your_oauth_connection": "Управление на OAuth връзката",
|
||||
"map": "Карта",
|
||||
"map_assets_in_bound": "{count} снимки",
|
||||
"map_assets_in_bounds": "{count} снимки",
|
||||
"map_assets_in_bounds": "{count, plural, =0 {Няма снимки} one {# снимка} other {# снимки}}",
|
||||
"map_cannot_get_user_location": "Не можах да получа местоположението",
|
||||
"map_location_dialog_yes": "Да",
|
||||
"map_location_picker_page_use_location": "Използвай това местоположение",
|
||||
@@ -1226,7 +1278,6 @@
|
||||
"map_location_service_disabled_title": "Услугата за местоположение е изключена",
|
||||
"map_marker_for_images": "Маркери на картата за снимки направени в {city}, {country}",
|
||||
"map_marker_with_image": "Маркер на картата с изображение",
|
||||
"map_no_assets_in_bounds": "Няма снимки от този район",
|
||||
"map_no_location_permission_content": "За да се показват обектите от текущото място, трябва разрешение за определяне на местоположението. Искате ли да предоставите разрешение сега?",
|
||||
"map_no_location_permission_title": "Отказан достъп до местоположение",
|
||||
"map_settings": "Настройки на картата",
|
||||
@@ -1263,6 +1314,7 @@
|
||||
"merged_people_count": "Слят {count, plural, one {# човек} other {# човека}}",
|
||||
"minimize": "Минимизиране",
|
||||
"minute": "Минута",
|
||||
"minutes": "Минути",
|
||||
"missing": "Липсващи",
|
||||
"model": "Модел",
|
||||
"month": "Месец",
|
||||
@@ -1282,6 +1334,9 @@
|
||||
"my_albums": "Мои албуми",
|
||||
"name": "Име",
|
||||
"name_or_nickname": "Име или прякор",
|
||||
"network_requirement_photos_upload": "Използвай мобилни данни за архивиране на снимки",
|
||||
"network_requirement_videos_upload": "Използвай мобилни данни за архивиране на видео",
|
||||
"network_requirements_updated": "Мрежовите настройки са променени, нулиране на опашката за архивиране",
|
||||
"networking_settings": "Мрежа",
|
||||
"networking_subtitle": "Управление на настройките за връзка със сървъра",
|
||||
"never": "Никога",
|
||||
@@ -1317,6 +1372,7 @@
|
||||
"no_results": "Няма резултати",
|
||||
"no_results_description": "Опитайте със синоним или по-обща ключова дума",
|
||||
"no_shared_albums_message": "Създайте албум, за да споделяте снимки и видеоклипове с хората в мрежата си",
|
||||
"no_uploads_in_progress": "Няма качване в момента",
|
||||
"not_in_any_album": "Не е в никой албум",
|
||||
"not_selected": "Не е избрано",
|
||||
"note_apply_storage_label_to_previously_uploaded assets": "Забележка: За да приложите етикета за съхранение към предварително качени активи, стартирайте",
|
||||
@@ -1332,6 +1388,7 @@
|
||||
"oauth": "OAuth",
|
||||
"official_immich_resources": "Официална информация за Immich",
|
||||
"offline": "Офлайн",
|
||||
"offset": "Отместване",
|
||||
"ok": "Добре",
|
||||
"oldest_first": "Най-старите първи",
|
||||
"on_this_device": "На това устройство",
|
||||
@@ -1354,6 +1411,7 @@
|
||||
"original": "оригинал",
|
||||
"other": "Други",
|
||||
"other_devices": "Други устройства",
|
||||
"other_entities": "Други обекти",
|
||||
"other_variables": "Други променливи",
|
||||
"owned": "Моите",
|
||||
"owner": "Собственик",
|
||||
@@ -1408,6 +1466,9 @@
|
||||
"permission_onboarding_permission_limited": "Ограничен достъп. За да може Immich да архивира и управлява галерията, предоставете достъп до снимки и видео в настройките.",
|
||||
"permission_onboarding_request": "Immich се нуждае от разрешение за преглед на снимки и видео.",
|
||||
"person": "Човек",
|
||||
"person_age_months": "{months, plural, one {# месец} other {# месеца}}",
|
||||
"person_age_year_months": "1 година и {months, plural, one {# месец} other {# месеца}}",
|
||||
"person_age_years": "{years, plural, other {# години}}",
|
||||
"person_birthdate": "Дата на раждане {date}",
|
||||
"person_hidden": "{name}{hidden, select, true { (скрит)} other {}}",
|
||||
"photo_shared_all_users": "Изглежда, че сте споделили снимките си с всички потребители или нямате потребители, с които да споделяте.",
|
||||
@@ -1485,6 +1546,7 @@
|
||||
"purchase_server_description_2": "Статус на поддръжник",
|
||||
"purchase_server_title": "Сървър",
|
||||
"purchase_settings_server_activated": "Продуктовият ключ на сървъра се управлява от администратора",
|
||||
"queue_status": "В опашка {count} от {total}",
|
||||
"rating": "Оценка със звезди",
|
||||
"rating_clear": "Изчисти оценката",
|
||||
"rating_count": "{count, plural, one {# звезда} other {# звезди}}",
|
||||
@@ -1513,6 +1575,8 @@
|
||||
"refreshing_faces": "Опресняване на лицата",
|
||||
"refreshing_metadata": "Опресняване на метаданните",
|
||||
"regenerating_thumbnails": "Пресъздаване на миниатюрите",
|
||||
"remote": "На сървъра",
|
||||
"remote_assets": "Обекти на сървъра",
|
||||
"remove": "Премахни",
|
||||
"remove_assets_album_confirmation": "Сигурни ли сте, че искате да премахнете {count, plural, one {# елемент} other {# елемента}} от албума?",
|
||||
"remove_assets_shared_link_confirmation": "Сигурни ли сте, че искате да премахнете {count, plural, one {# елемент} other {# елемента}} от този споеделен линк?",
|
||||
@@ -1550,19 +1614,28 @@
|
||||
"reset_password": "Нулиране на паролата",
|
||||
"reset_people_visibility": "Нулиране на видимостта на хората",
|
||||
"reset_pin_code": "Нулирай PIN кода",
|
||||
"reset_pin_code_description": "Ако сте си забравили ПИН кода, може да се обърнете към администратора на сървъра за да го нулира",
|
||||
"reset_pin_code_success": "Успешно нулиран ПИН код",
|
||||
"reset_pin_code_with_password": "С вашата парола можете винаги да нулирате своя ПИН код",
|
||||
"reset_sqlite": "Нулиране на базата данни SQLite",
|
||||
"reset_sqlite_confirmation": "Наистина ли искате да нулирате базата данни SQLite? Ще трябва да излезете от системата и да се впишете отново за нова синхронизация на данните",
|
||||
"reset_sqlite_success": "Успешно нулиране на базата данни SQLite",
|
||||
"reset_to_default": "Връщане на фабрични настройки",
|
||||
"resolve_duplicates": "Реши дубликатите",
|
||||
"resolved_all_duplicates": "Всички дубликати са решени",
|
||||
"restore": "Възстановяване",
|
||||
"restore_all": "Възстанови всички",
|
||||
"restore_trash_action_prompt": "{count} възстановени от коша",
|
||||
"restore_user": "Възстанови потребител",
|
||||
"restored_asset": "Възстановен елемент",
|
||||
"resume": "Продължаване",
|
||||
"retry_upload": "Опитай качването отново",
|
||||
"review_duplicates": "Разгледай дубликатите",
|
||||
"review_large_files": "Преглед на големи файлове",
|
||||
"role": "Роля",
|
||||
"role_editor": "Редактор",
|
||||
"role_viewer": "Зрител",
|
||||
"running": "Изпълняване",
|
||||
"save": "Запази",
|
||||
"save_to_gallery": "Запази в галерията",
|
||||
"saved_api_key": "Запазен API Key",
|
||||
@@ -1716,6 +1789,7 @@
|
||||
"shared_link_clipboard_copied_massage": "Копирано в клипборда",
|
||||
"shared_link_clipboard_text": "Връзка: {link}\nПарола: {password}",
|
||||
"shared_link_create_error": "Грешка при създаване на споделена връзка",
|
||||
"shared_link_custom_url_description": "Достъпете споделения линк с персонализиран URL адрес",
|
||||
"shared_link_edit_description_hint": "Въведи описание на споделеното",
|
||||
"shared_link_edit_expire_after_option_day": "1 ден",
|
||||
"shared_link_edit_expire_after_option_days": "{count} дни",
|
||||
@@ -1741,6 +1815,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "Управление на споделените връзки",
|
||||
"shared_link_options": "Опции за споделена връзка",
|
||||
"shared_link_password_description": "Изискване на парола за достъп до споделения линк",
|
||||
"shared_links": "Споделени връзки",
|
||||
"shared_links_description": "Сподели снимки и видеа с линк",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, other {# споделени снимки и видеа.}}",
|
||||
@@ -1790,6 +1865,7 @@
|
||||
"sort_created": "Дата на създаване",
|
||||
"sort_items": "Брой елементи",
|
||||
"sort_modified": "Дата на промяна",
|
||||
"sort_newest": "Най-нови снимки",
|
||||
"sort_oldest": "Най-старата снимка",
|
||||
"sort_people_by_similarity": "Сортиране на хора по прилика",
|
||||
"sort_recent": "Най-новата снимка",
|
||||
@@ -1816,6 +1892,7 @@
|
||||
"storage_quota": "Квота на хранилището",
|
||||
"storage_usage": "Използвани {used} от {available}",
|
||||
"submit": "Изпращане",
|
||||
"success": "Успешно",
|
||||
"suggestions": "Предложения",
|
||||
"sunrise_on_the_beach": "Изгрев на плажа",
|
||||
"support": "Поддръжка",
|
||||
@@ -1825,6 +1902,8 @@
|
||||
"sync": "Синхронизиране",
|
||||
"sync_albums": "Синхронизиране на албуми",
|
||||
"sync_albums_manual_subtitle": "Синхронизирай всички заредени видеа и снимки в избраните архивни албуми",
|
||||
"sync_local": "Локална синхронизация",
|
||||
"sync_remote": "Синхронизация със сървъра",
|
||||
"sync_upload_album_setting_subtitle": "Създавайте и зареждайте снимки и видеа в избрани албуми в Immich",
|
||||
"tag": "Таг",
|
||||
"tag_assets": "Тагни елементи",
|
||||
@@ -1835,6 +1914,7 @@
|
||||
"tag_updated": "Актуализиран етикет: {tag}",
|
||||
"tagged_assets": "Тагнати {count, plural, one {# елемент} other {# елементи}}",
|
||||
"tags": "Етикет",
|
||||
"tap_to_run_job": "Докоснете, за да стартирате задачата",
|
||||
"template": "Шаблон",
|
||||
"theme": "Тема",
|
||||
"theme_selection": "Избор на тема",
|
||||
@@ -1914,10 +1994,13 @@
|
||||
"updated_at": "Обновено",
|
||||
"updated_password": "Паролата е актуализирана",
|
||||
"upload": "Качване",
|
||||
"upload_action_prompt": "{count} на опашка за качване",
|
||||
"upload_concurrency": "Успоредни качвания",
|
||||
"upload_details": "Детайли за качването",
|
||||
"upload_dialog_info": "Искате ли да архивирате на сървъра избраните обекти?",
|
||||
"upload_dialog_title": "Качи обект",
|
||||
"upload_errors": "Качването е завъшено с {count, plural, one {# грешка} other {# грешки}}, обновете страницата за да видите новите елементи.",
|
||||
"upload_finished": "Качването завърши",
|
||||
"upload_progress": "Остават {remaining, number} - Обработени {processed, number}/{total, number}",
|
||||
"upload_skipped_duplicates": "Прескочени {count, plural, one {# дублиран елемент} other {# дублирани елементи}}",
|
||||
"upload_status_duplicates": "Дубликати",
|
||||
@@ -1926,6 +2009,7 @@
|
||||
"upload_success": "Качването е успешно, опреснете страницата, за да видите новите файлове.",
|
||||
"upload_to_immich": "Казване в Immich ({count})",
|
||||
"uploading": "Качваме",
|
||||
"uploading_media": "Качване на медийни файлове",
|
||||
"url": "URL",
|
||||
"usage": "Потребление",
|
||||
"use_biometric": "Използвай биометрия",
|
||||
@@ -1946,6 +2030,7 @@
|
||||
"user_usage_stats_description": "Преглед на статистиката за използването на акаунта",
|
||||
"username": "Потребителско име",
|
||||
"users": "Потребители",
|
||||
"users_added_to_album_count": "{count, plural, one {Добавен е # потребител} other {Добавени са # потребителя}} на албума",
|
||||
"utilities": "Инструменти",
|
||||
"validate": "Валидиране",
|
||||
"validate_endpoint_error": "Моля, въведи правилен URL",
|
||||
@@ -1964,6 +2049,7 @@
|
||||
"view_album": "Разгледай албума",
|
||||
"view_all": "Преглед на всички",
|
||||
"view_all_users": "Преглед на всички потребители",
|
||||
"view_details": "Подробности за изгледа",
|
||||
"view_in_timeline": "Покажи във времева линия",
|
||||
"view_link": "Преглед на връзката",
|
||||
"view_links": "Преглед на връзките",
|
||||
|
||||
44
i18n/bn.json
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "একটি অবস্থান যোগ করুন",
|
||||
"add_a_name": "একটি নাম যোগ করুন",
|
||||
"add_a_title": "একটি শিরোনাম যোগ করুন",
|
||||
"add_birthday": "একটি জন্মদিন যোগ করুন",
|
||||
"add_endpoint": "এন্ডপয়েন্ট যোগ করুন",
|
||||
"add_exclusion_pattern": "বহির্ভূতকরণ নমুনা",
|
||||
"add_import_path": "ইমপোর্ট করার পাথ যুক্ত করুন",
|
||||
@@ -27,6 +28,9 @@
|
||||
"add_to_album": "এলবাম এ যোগ করুন",
|
||||
"add_to_album_bottom_sheet_added": "{album} এ যোগ করা হয়েছে",
|
||||
"add_to_album_bottom_sheet_already_exists": "{album} এ আগে থেকেই আছে",
|
||||
"add_to_album_toggle": "{album} - এর নির্বাচন পরিবর্তন করুন",
|
||||
"add_to_albums": "অ্যালবামে যোগ করুন",
|
||||
"add_to_albums_count": "অ্যালবামে যোগ করুন ({count})",
|
||||
"add_to_shared_album": "শেয়ার করা অ্যালবামে যোগ করুন",
|
||||
"add_url": "লিঙ্ক যোগ করুন",
|
||||
"added_to_archive": "আর্কাইভ এ যোগ করা হয়েছে",
|
||||
@@ -44,6 +48,13 @@
|
||||
"backup_database": "ডাটাবেস ডাম্প তৈরি করুন",
|
||||
"backup_database_enable_description": "ডাটাবেস ডাম্প সক্রিয় করুন",
|
||||
"backup_keep_last_amount": "আগের ডাম্পের পরিমাণ রাখা হবে",
|
||||
"backup_onboarding_1_description": "অফসাইট কপি ক্লাউডে অথবা অন্য কোনও ভৌত স্থানে।",
|
||||
"backup_onboarding_2_description": "বিভিন্ন ডিভাইসে স্থানীয় কপি। এর মধ্যে রয়েছে প্রধান ফাইল এবং স্থানীয়ভাবে সেই ফাইলগুলির ব্যাকআপ।",
|
||||
"backup_onboarding_3_description": "মূল ফাইল সহ আপনার ডেটার মোট কপি। এর মধ্যে রয়েছে ১টি অফসাইট কপি এবং ২টি স্থানীয় কপি।",
|
||||
"backup_onboarding_description": "আপনার ডেটা সুরক্ষিত রাখার জন্য একটি <backblaze-link>3-2-1 ব্যাকআপ কৌশল</backblaze-link> সুপারিশ করা হয়। একটি বিস্তৃত ব্যাকআপ সমাধানের জন্য আপনার আপলোড করা ফটো/ভিডিওগুলির কপি এবং Immich ডাটাবেস রাখা উচিত।",
|
||||
"backup_onboarding_footer": "Immich এর ব্যাকআপ নেওয়ার বিষয়ে আরও তথ্যের জন্য, অনুগ্রহ করে <link>ডকুমেন্টেশন</link> দেখুন।",
|
||||
"backup_onboarding_parts_title": "৩-২-১ ব্যাকআপের মধ্যে রয়েছে:",
|
||||
"backup_onboarding_title": "ব্যাকআপ",
|
||||
"backup_settings": "ডাটাবেস ডাম্প সেটিংস",
|
||||
"backup_settings_description": "ডাটাবেস ডাম্প সেটিংস পরিচালনা করুন।",
|
||||
"cleared_jobs": "{job} এর জন্য jobs খালি করা হয়েছে",
|
||||
@@ -63,8 +74,8 @@
|
||||
"exclusion_pattern_description": "এক্সক্লুশন প্যাটার্ন ব্যবহার করে আপনি আপনার লাইব্রেরি স্ক্যান করার সময় ফাইল এবং ফোল্ডারগুলিকে উপেক্ষা করতে পারবেন। যদি আপনার এমন ফোল্ডার থাকে যেখানে এমন ফাইল থাকে যা আপনি আমদানি করতে চান না, যেমন RAW ফাইল।",
|
||||
"external_library_management": "বহিরাগত গ্রন্থাগার ব্যবস্থাপনা",
|
||||
"face_detection": "মুখ সনাক্তকরণ",
|
||||
"face_detection_description": "মেশিন লার্নিং ব্যবহার করে অ্যাসেটে থাকা মুখগুলি সনাক্ত করুন। ভিডিওগুলির জন্য, শুধুমাত্র থাম্বনেইল বিবেচনা করা হয়। \"রিফ্রেশ\" (পুনরায়) সমস্ত অ্যাসেট প্রক্রিয়া করে। \"রিসেট\" অতিরিক্তভাবে সমস্ত বর্তমান মুখের ডেটা সাফ করে। \"অনুপস্থিত\" অ্যাসেটগুলিকে সারিবদ্ধ করে যা এখনও প্রক্রিয়া করা হয়নি। সনাক্ত করা মুখগুলিকে ফেসিয়াল রিকগনিশনের জন্য সারিবদ্ধ করা হবে, ফেসিয়াল ডিটেকশন সম্পূর্ণ হওয়ার পরে, বিদ্যমান বা নতুন ব্যক্তিদের মধ্যে গোষ্ঠীবদ্ধ করে।",
|
||||
"facial_recognition_job_description": "শনাক্ত করা মুখগুলিকে মানুষের মধ্যে গোষ্ঠীভুক্ত করুন। মুখ সনাক্তকরণ সম্পূর্ণ হওয়ার পরে এই ধাপটি চলে। \"রিসেট\" (পুনরায়) সমস্ত মুখকে ক্লাস্টার করে। \"অনুপস্থিত\" মুখগুলিকে সারিতে রাখে যেখানে কোনও ব্যক্তিকে বরাদ্দ করা হয়নি।",
|
||||
"face_detection_description": "মেশিন লার্নিং ব্যবহার করে অ্যাসেটে থাকা মুখ/চেহারা গুলি সনাক্ত করুন। ভিডিও গুলির জন্য, শুধুমাত্র থাম্বনেইল বিবেচনা করা হয়। \"রিফ্রেশ\" (পুনরায়) সমস্ত অ্যাসেট প্রক্রিয়া করে। \"রিসেট\" করার মাধ্যমে অতিরিক্তভাবে সমস্ত বর্তমান মুখের ডেটা সাফ করে। \"অনুপস্থিত\" অ্যাসেটগুলিকে সারিবদ্ধ করে যা এখনও প্রক্রিয়া করা হয়নি। সনাক্ত করা মুখগুলিকে ফেসিয়াল রিকগনিশনের জন্য সারিবদ্ধ করা হবে, ফেসিয়াল ডিটেকশন সম্পূর্ণ হওয়ার পরে, বিদ্যমান বা নতুন ব্যক্তিদের মধ্যে গোষ্ঠীবদ্ধ করে।",
|
||||
"facial_recognition_job_description": "শনাক্ত করা মুখগুলিকে মানুষের মধ্যে গোষ্ঠীভুক্ত/গ্রুপ করুন। মুখ সনাক্তকরণ সম্পূর্ণ হওয়ার পরে এই ধাপটি চলে। \"রিসেট\" (পুনরায়) সমস্ত মুখকে ক্লাস্টার করে। \"অনুপস্থিত/মিসিং\" মুখগুলিকে সারিতে রাখে যেগুলো কোনও ব্যক্তিকে এসাইন/বরাদ্দ করা হয়নি।",
|
||||
"failed_job_command": "কমান্ড {command} কাজের জন্য ব্যর্থ হয়েছে: {job}",
|
||||
"force_delete_user_warning": "সতর্কতা: এটি ব্যবহারকারী এবং সমস্ত সম্পদ অবিলম্বে সরিয়ে ফেলবে। এটি পূর্বাবস্থায় ফেরানো যাবে না এবং ফাইলগুলি পুনরুদ্ধার করা যাবে না।",
|
||||
"image_format": "ফরম্যাট",
|
||||
@@ -75,9 +86,9 @@
|
||||
"image_fullsize_quality_description": "পূর্ণ-আকারের ছবির মান ১-১০০। উচ্চতর হলে ভালো, কিন্তু আরও বড় ফাইল তৈরি হয়।",
|
||||
"image_fullsize_title": "পূর্ণ-আকারের চিত্র সেটিংস",
|
||||
"image_prefer_embedded_preview": "এম্বেড করা প্রিভিউ পছন্দ করুন",
|
||||
"image_prefer_embedded_preview_setting_description": "ছবি প্রক্রিয়াকরণের জন্য এবং যখনই উপলব্ধ থাকবে তখন RAW ফটোতে এমবেডেড প্রিভিউ ব্যবহার করুন। এটি কিছু ছবির জন্য আরও সঠিক রঙ তৈরি করতে পারে, তবে প্রিভিউয়ের মান ক্যামেরা-নির্ভর এবং ছবিতে আরও কম্প্রেশন আর্টিফ্যাক্ট থাকতে পারে।",
|
||||
"image_prefer_embedded_preview_setting_description": "যদি পাওয়া যায়, RAW ছবির ভেতরে থাকা প্রিভিউ ব্যবহার করুন। এতে কিছু ছবির রঙ আরও সঠিক দেখা যেতে পারে, তবে মান ক্যামেরার ওপর নির্ভর করে এবং ছবিতে বাড়তি কমপ্রেশন আর্টিফ্যাক্ট দেখা যেতে পারে।",
|
||||
"image_prefer_wide_gamut": "প্রশস্ত পরিসর পছন্দ করুন",
|
||||
"image_prefer_wide_gamut_setting_description": "থাম্বনেইলের জন্য ডিসপ্লে P3 ব্যবহার করুন। এটি প্রশস্ত রঙের স্থান সহ ছবির প্রাণবন্ততা আরও ভালভাবে সংরক্ষণ করে, তবে পুরানো ব্রাউজার সংস্করণ সহ পুরানো ডিভাইসগুলিতে ছবিগুলি ভিন্নভাবে প্রদর্শিত হতে পারে। রঙের পরিবর্তন এড়াতে sRGB ছবিগুলিকে sRGB হিসাবে রাখা হয়।",
|
||||
"image_prefer_wide_gamut_setting_description": "থাম্বনেইলের জন্য Display P3 ব্যবহার করুন। এটি ওয়াইড কালারস্পেস ছবির উজ্জ্বলতা ও প্রাণবন্ত রঙ ভালোভাবে ধরে রাখে, তবে পুরনো ডিভাইস বা ব্রাউজারে ছবিগুলো ভিন্নভাবে দেখা যেতে পারে। sRGB ছবিগুলো রঙের পরিবর্তন এড়াতে sRGB হিসেবেই রাখা হবে।",
|
||||
"image_preview_description": "স্ট্রিপড মেটাডেটা সহ মাঝারি আকারের ছবি, একটি একক সম্পদ দেখার সময় এবং মেশিন লার্নিংয়ের জন্য ব্যবহৃত হয়",
|
||||
"image_preview_quality_description": "১-১০০ এর মধ্যে প্রিভিউ কোয়ালিটি। বেশি হলে ভালো, কিন্তু বড় ফাইল তৈরি হয় এবং অ্যাপের প্রতিক্রিয়াশীলতা কমাতে পারে। কম মান সেট করলে মেশিন লার্নিং কোয়ালিটির উপর প্রভাব পড়তে পারে।",
|
||||
"image_preview_title": "প্রিভিউ সেটিংস",
|
||||
@@ -91,9 +102,30 @@
|
||||
"image_thumbnail_title": "থাম্বনেল সেটিংস",
|
||||
"job_concurrency": "{job} কনকারেন্সি",
|
||||
"job_created": "Job তৈরি হয়েছে",
|
||||
"job_not_concurrency_safe": "এই কাজটি সমকালীন-নিরাপদ নয়।",
|
||||
"job_not_concurrency_safe": "এই কাজটি সমান্তরালভাবে চালানো নিরাপদ নয়",
|
||||
"job_settings": "কাজের সেটিংস",
|
||||
"job_settings_description": "কাজের সমান্তরালতা পরিচালনা করুন",
|
||||
"job_status": "চাকরির অবস্থা"
|
||||
"job_status": "চাকরির অবস্থা",
|
||||
"jobs_delayed": "{jobCount, plural, other {# বিলম্বিত}}",
|
||||
"jobs_failed": "{jobCount, plural, other {# ব্যর্থ}}",
|
||||
"library_created": "লাইব্রেরি তৈরি করা হয়েছেঃ {library}",
|
||||
"library_deleted": "লাইব্রেরি মুছে ফেলা হয়েছে",
|
||||
"library_import_path_description": "ইম্পোর্ট/যোগ করার জন্য একটি ফোল্ডার নির্দিষ্ট করুন। সাবফোল্ডার সহ এই ফোল্ডারটি ছবি এবং ভিডিওর জন্য স্ক্যান করা হবে।",
|
||||
"library_scanning": "পর্যায়ক্রমিক স্ক্যানিং",
|
||||
"library_scanning_description": "পর্যায়ক্রমিক লাইব্রেরি স্ক্যানিং কনফিগার করুন",
|
||||
"library_scanning_enable_description": "পর্যায়ক্রমিক লাইব্রেরি স্ক্যানিং সক্ষম করুন",
|
||||
"library_settings": "বহিরাগত লাইব্রেরি",
|
||||
"library_settings_description": "বহিরাগত লাইব্রেরি সেটিংস পরিচালনা করুন",
|
||||
"library_tasks_description": "নতুন এবং/অথবা পরিবর্তিত সম্পদের জন্য বহিরাগত লাইব্রেরি স্ক্যান করুন",
|
||||
"library_watching_enable_description": "ফাইল পরিবর্তনের জন্য বহিরাগত লাইব্রেরিগুলি দেখুন",
|
||||
"library_watching_settings": "লাইব্রেরি দেখা (পরীক্ষামূলক)",
|
||||
"library_watching_settings_description": "পরিবর্তিত ফাইলগুলির জন্য স্বয়ংক্রিয়ভাবে নজর রাখুন",
|
||||
"logging_enable_description": "লগিং এনাবল/সক্ষম করুন",
|
||||
"logging_level_description": "সক্রিয় থাকাকালীন, কোন লগ স্তর ব্যবহার করতে হবে।",
|
||||
"logging_settings": "লগিং",
|
||||
"machine_learning_clip_model": "CLIP মডেল",
|
||||
"machine_learning_clip_model_description": "<link>এখানে</link> তালিকাভুক্ত একটি CLIP মডেলের নাম। মনে রাখবেন, মডেল পরিবর্তনের পর সব ছবির জন্য অবশ্যই ‘Smart Search’ কাজটি আবার চালাতে হবে।",
|
||||
"machine_learning_duplicate_detection": "পুনরাবৃত্তি সনাক্তকরণ",
|
||||
"machine_learning_duplicate_detection_enabled": "পুনরাবৃত্তি শনাক্তকরণ চালু করুন"
|
||||
}
|
||||
}
|
||||
|
||||
39
i18n/ca.json
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "Afegiu una ubicació",
|
||||
"add_a_name": "Afegir un nom",
|
||||
"add_a_title": "Afegir un títol",
|
||||
"add_birthday": "Afegeix la data de naixement",
|
||||
"add_endpoint": "afegir endpoint",
|
||||
"add_exclusion_pattern": "Afegir un patró d'exclusió",
|
||||
"add_import_path": "Afegir una ruta d'importació",
|
||||
@@ -44,6 +45,13 @@
|
||||
"backup_database": "Fer un bolcat de la base de dades",
|
||||
"backup_database_enable_description": "Habilitar bolcat de la base de dades",
|
||||
"backup_keep_last_amount": "Quantitat de bolcats anteriors per conservar",
|
||||
"backup_onboarding_1_description": "còpia externa al núvol o en una altra ubicació física.",
|
||||
"backup_onboarding_2_description": "còpies locals en diferents dispositius. Això inclou els fitxers principals i una còpia de seguretat d'aquests fitxers localment.",
|
||||
"backup_onboarding_3_description": "còpies totals de les vostres dades, inclosos els fitxers originals. Això inclou 1 còpia externa i 2 còpies locals.",
|
||||
"backup_onboarding_description": "Es recomana una <backblaze-link>estratègia de còpia de seguretat 3-2-1</backblaze-link> per protegir les vostres dades. Hauríeu de conservar còpies de les vostres fotos/vídeos penjats, així com de la base de dades Immich per obtenir una solució de còpia de seguretat completa.",
|
||||
"backup_onboarding_footer": "Per obtenir més informació sobre com fer còpies de seguretat d'Immich, consulteu la <link>documentation</link>.",
|
||||
"backup_onboarding_parts_title": "Una còpia de seguretat 3-2-1 inclou:",
|
||||
"backup_onboarding_title": "Còpies de seguretat",
|
||||
"backup_settings": "Configuració dels bolcats",
|
||||
"backup_settings_description": "Gestionar la configuració de bolcats de la base de dades. Nota: els treballs no es monitoritzen ni es notifiquen els errors.",
|
||||
"cleared_jobs": "Tasques esborrades per a: {job}",
|
||||
@@ -166,10 +174,20 @@
|
||||
"metadata_settings_description": "Administrar la configuració de les metadades",
|
||||
"migration_job": "Migració",
|
||||
"migration_job_description": "Migra les miniatures d'elements i cares cap a la nova estructura de carpetes",
|
||||
"nightly_tasks_cluster_faces_setting_description": "Executar el reconeixement facial en cares recentment detectades",
|
||||
"nightly_tasks_cluster_new_faces_setting": "Agrupa cares noves",
|
||||
"nightly_tasks_database_cleanup_setting": "Tasques de neteja de la base de dades",
|
||||
"nightly_tasks_database_cleanup_setting_description": "Netegeu les dades antigues i caducades de la base de dades",
|
||||
"nightly_tasks_generate_memories_setting": "Generar memòries",
|
||||
"nightly_tasks_generate_memories_setting_description": "Crear nous records a partir de les fotos penjades",
|
||||
"nightly_tasks_missing_thumbnails_setting": "Generar les miniatures restants",
|
||||
"nightly_tasks_missing_thumbnails_setting_description": "Posar en cua les fotos penjades sense miniatures per a la generació de la seva miniatura",
|
||||
"nightly_tasks_settings": "Configuració de les tasques nocturnes",
|
||||
"nightly_tasks_settings_description": "Gestionar les tasques nocturnes",
|
||||
"nightly_tasks_start_time_setting": "Hora d'inici",
|
||||
"nightly_tasks_start_time_setting_description": "Hora en què el servidor comença a executar les tasques nocturnes",
|
||||
"nightly_tasks_sync_quota_usage_setting": "Sincronitzar l'ús de la quota",
|
||||
"nightly_tasks_sync_quota_usage_setting_description": "Actualitzar la quota d'emmagatzematge de l'usuari segons l'ús actual",
|
||||
"no_paths_added": "No s'ha afegit cap ruta",
|
||||
"no_pattern_added": "Cap patró aplicat",
|
||||
"note_apply_storage_label_previous_assets": "Nota: Per aplicar l'etiquetatge d'emmagatzematge a elements pujats prèviament, executeu la",
|
||||
@@ -337,6 +355,9 @@
|
||||
"trash_number_of_days_description": "Nombre de dies per mantenir els recursos a la paperera abans de suprimir-los permanentment",
|
||||
"trash_settings": "Configuració de la paperera",
|
||||
"trash_settings_description": "Gestiona la configuració de la paperera",
|
||||
"unlink_all_oauth_accounts": "Desvincula tots els comptes d'OAuth",
|
||||
"unlink_all_oauth_accounts_description": "Recorda desvincular tots els comptes d'OAuth abans de migrar a un proveïdor nou.",
|
||||
"unlink_all_oauth_accounts_prompt": "Estàs segur que vols desvincular tots els comptes d'OAuth? Això restablirà l'identificador d'OAuth per a cada usuari i no es pot tornar enrere.",
|
||||
"user_cleanup_job": "Neteja d'usuari",
|
||||
"user_delete_delay": "El compte i els recursos de <b>{user}</b> es programaran per a la supressió permanent en {delay, plural, one {# dia} other {# dies}}.",
|
||||
"user_delete_delay_settings": "Retard de la supressió",
|
||||
@@ -363,6 +384,8 @@
|
||||
"admin_password": "Contrasenya de l'administrador",
|
||||
"administration": "Administració",
|
||||
"advanced": "Avançat",
|
||||
"advanced_settings_beta_timeline_subtitle": "Prova la nova experiència de l'aplicació",
|
||||
"advanced_settings_beta_timeline_title": "Cronologia beta",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "Feu servir aquesta opció per filtrar els continguts multimèdia durant la sincronització segons criteris alternatius. Només proveu-ho si teniu problemes amb l'aplicació per detectar tots els àlbums.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "Utilitza el filtre de sincronització d'àlbums de dispositius alternatius",
|
||||
"advanced_settings_log_level_title": "Nivell de registre: {level}",
|
||||
@@ -385,6 +408,7 @@
|
||||
"album_cover_updated": "Portada de l'àlbum actualitzada",
|
||||
"album_delete_confirmation": "Esteu segur que voleu suprimir l'àlbum {album}?",
|
||||
"album_delete_confirmation_description": "Si aquest àlbum es comparteix, els altres usuaris ja no podran accedir-hi.",
|
||||
"album_deleted": "S'ha suprimit l'àlbum",
|
||||
"album_info_card_backup_album_excluded": "Exclosos",
|
||||
"album_info_card_backup_album_included": "Inclosos",
|
||||
"album_info_updated": "Informació de l'àlbum actualitzada",
|
||||
@@ -394,6 +418,7 @@
|
||||
"album_options": "Opcions de l'àlbum",
|
||||
"album_remove_user": "Eliminar l'usuari?",
|
||||
"album_remove_user_confirmation": "Esteu segurs que voleu eliminar {user}?",
|
||||
"album_search_not_found": "No s'ha trobat cap àlbum que coincideixi amb la teva cerca",
|
||||
"album_share_no_users": "Sembla que has compartit aquest àlbum amb tots els usuaris o no tens cap usuari amb qui compartir-ho.",
|
||||
"album_updated": "Àlbum actualitzat",
|
||||
"album_updated_setting_description": "Rep una notificació per correu electrònic quan un àlbum compartit tingui recursos nous",
|
||||
@@ -413,6 +438,7 @@
|
||||
"albums_default_sort_order": "Ordre per defecte de l'àlbum",
|
||||
"albums_default_sort_order_description": "Ordre de classificació inicial dels recursos al crear àlbums nous.",
|
||||
"albums_feature_description": "Col·leccions d'actius que es poden compartir amb altres usuaris.",
|
||||
"albums_on_device_count": "Àlbums al dispositiu ({count})",
|
||||
"all": "Tots",
|
||||
"all_albums": "Tots els àlbum",
|
||||
"all_people": "Tota la gent",
|
||||
@@ -496,6 +522,7 @@
|
||||
"back_close_deselect": "Tornar, tancar o anul·lar la selecció",
|
||||
"background_location_permission": "Permís d'ubicació en segon pla",
|
||||
"background_location_permission_content": "Per canviar de xarxa quan s'executa en segon pla, Immich ha de *sempre* tenir accés a la ubicació precisa perquè l'aplicació pugui llegir el nom de la xarxa Wi-Fi",
|
||||
"backup": "Còpia",
|
||||
"backup_album_selection_page_albums_device": "Àlbums al dispositiu ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Un toc per incloure, doble toc per excloure",
|
||||
"backup_album_selection_page_assets_scatter": "Els elements poden dispersar-se en diversos àlbums. Per tant, els àlbums es poden incloure o excloure durant el procés de còpia de seguretat.",
|
||||
@@ -576,7 +603,7 @@
|
||||
"cache_settings_clear_cache_button": "Neteja la memòria cau",
|
||||
"cache_settings_clear_cache_button_title": "Neteja la memòria cau de l'aplicació. Això impactarà significativament el rendiment fins que la memòria cau es torni a reconstruir.",
|
||||
"cache_settings_duplicated_assets_clear_button": "NETEJA",
|
||||
"cache_settings_duplicated_assets_subtitle": "Fotos i vídeos que estan a la llista negra de l'aplicació",
|
||||
"cache_settings_duplicated_assets_subtitle": "Fotos i vídeos que estan a la llista ignorada de l'aplicació",
|
||||
"cache_settings_duplicated_assets_title": "Elements duplicats ({count})",
|
||||
"cache_settings_statistics_album": "Miniatures de la biblioteca",
|
||||
"cache_settings_statistics_full": "Imatges completes",
|
||||
@@ -725,7 +752,7 @@
|
||||
"default_locale": "Localització predeterminada",
|
||||
"default_locale_description": "Format de dates i números segons la configuració del navegador",
|
||||
"delete": "Esborra",
|
||||
"delete_action_prompt": "{count} eliminats permanentment",
|
||||
"delete_action_prompt": "{count} eliminats",
|
||||
"delete_album": "Esborra l'àlbum",
|
||||
"delete_api_key_prompt": "Esteu segurs que voleu eliminar aquesta clau API?",
|
||||
"delete_dialog_alert": "Aquests elements seran eliminats de manera permanent d'Immich i del vostre dispositiu",
|
||||
@@ -965,9 +992,6 @@
|
||||
"exif_bottom_sheet_location": "UBICACIÓ",
|
||||
"exif_bottom_sheet_people": "PERSONES",
|
||||
"exif_bottom_sheet_person_add_person": "Afegir nom",
|
||||
"exif_bottom_sheet_person_age_months": "Edat {months} mesos",
|
||||
"exif_bottom_sheet_person_age_year_months": "Edat 1 any, {months} mesos",
|
||||
"exif_bottom_sheet_person_age_years": "Edat {years}",
|
||||
"exit_slideshow": "Surt de la presentació de diapositives",
|
||||
"expand_all": "Ampliar-ho tot",
|
||||
"experimental_settings_new_asset_list_subtitle": "Treball en curs",
|
||||
@@ -1139,7 +1163,6 @@
|
||||
"light": "Llum",
|
||||
"like_deleted": "M'agrada suprimit",
|
||||
"link_motion_video": "Enllaçar vídeo en moviment",
|
||||
"link_options": "Opcions d'enllaç",
|
||||
"link_to_oauth": "Enllaç a OAuth",
|
||||
"linked_oauth_account": "Compte OAuth enllaçat",
|
||||
"list": "Llista",
|
||||
@@ -1202,8 +1225,7 @@
|
||||
"manage_your_devices": "Gestioneu els vostres dispositius connectats",
|
||||
"manage_your_oauth_connection": "Gestioneu la vostra connexió OAuth",
|
||||
"map": "Mapa",
|
||||
"map_assets_in_bound": "{count} foto",
|
||||
"map_assets_in_bounds": "{count} fotos",
|
||||
"map_assets_in_bounds": "{count, plural, =0 {No hi ha fotos en aquesta àrea} one {# foto} other {# fotos}}",
|
||||
"map_cannot_get_user_location": "No es pot obtenir la ubicació de l'usuari",
|
||||
"map_location_dialog_yes": "Sí",
|
||||
"map_location_picker_page_use_location": "Utilitzar aquesta ubicació",
|
||||
@@ -1211,7 +1233,6 @@
|
||||
"map_location_service_disabled_title": "Servei de localització desactivat",
|
||||
"map_marker_for_images": "Marcador de mapa per a imatges fetes a {city}, {country}",
|
||||
"map_marker_with_image": "Marcador de mapa amb imatge",
|
||||
"map_no_assets_in_bounds": "No hi ha fotos en aquesta zona",
|
||||
"map_no_location_permission_content": "Es necessita el permís de localització per mostrar els elements de la teva ubicació actual. Vols permetre-ho ara?",
|
||||
"map_no_location_permission_title": "Permís de localització denegat",
|
||||
"map_settings": "Paràmetres de mapa",
|
||||
|
||||
94
i18n/cs.json
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "Přidat polohu",
|
||||
"add_a_name": "Přidat jméno",
|
||||
"add_a_title": "Přidat název",
|
||||
"add_birthday": "Přidat datum narození",
|
||||
"add_endpoint": "Přidat koncový bod",
|
||||
"add_exclusion_pattern": "Přidat vzor vyloučení",
|
||||
"add_import_path": "Přidat cestu importu",
|
||||
@@ -27,6 +28,9 @@
|
||||
"add_to_album": "Přidat do alba",
|
||||
"add_to_album_bottom_sheet_added": "Přidáno do {album}",
|
||||
"add_to_album_bottom_sheet_already_exists": "Je již v {album}",
|
||||
"add_to_album_toggle": "Přepnout výběr pro {album}",
|
||||
"add_to_albums": "Přidat do alb",
|
||||
"add_to_albums_count": "Přidat do alb ({count})",
|
||||
"add_to_shared_album": "Přidat do sdíleného alba",
|
||||
"add_url": "Přidat URL",
|
||||
"added_to_archive": "Přidáno do archivu",
|
||||
@@ -44,6 +48,13 @@
|
||||
"backup_database": "Vytvořit výpis databáze",
|
||||
"backup_database_enable_description": "Povolit výpisy z databáze",
|
||||
"backup_keep_last_amount": "Počet předchozích výpisů, které se mají ponechat",
|
||||
"backup_onboarding_1_description": "kopie v cloudu nebo na jiném fyzickém místě.",
|
||||
"backup_onboarding_2_description": "místní kopie na různých zařízeních. To zahrnuje hlavní soubory a jejich místní zálohu.",
|
||||
"backup_onboarding_3_description": "kompletní kopie vašich dat, včetně původních souborů. To zahrnuje 1 kopii na jiném místě a 2 místní kopie.",
|
||||
"backup_onboarding_description": "K ochraně vašich dat doporučujeme strategii zálohování <backblaze-link>3-2-1</backblaze-link>. Pro komplexní zálohování byste měli uchovávat kopie nahraných fotografií/videí i databáze Immich.",
|
||||
"backup_onboarding_footer": "Další informace o zálohování Immiche naleznete v <link>dokumentaci</link>.",
|
||||
"backup_onboarding_parts_title": "Záloha 3-2-1 zahrnuje:",
|
||||
"backup_onboarding_title": "Zálohy",
|
||||
"backup_settings": "Zálohování databáze",
|
||||
"backup_settings_description": "Správa nastavení výpisu databáze.",
|
||||
"cleared_jobs": "Hotové úlohy pro: {job}",
|
||||
@@ -112,7 +123,7 @@
|
||||
"logging_enable_description": "Povolit protokolování",
|
||||
"logging_level_description": "Když je povoleno, jakou úroveň protokolu použít.",
|
||||
"logging_settings": "Protokolování",
|
||||
"machine_learning_clip_model": "CLIP model",
|
||||
"machine_learning_clip_model": "Model CLIP",
|
||||
"machine_learning_clip_model_description": "Název CLIP modelu je uvedený <link>zde</link>. Pamatujte, že při změně modelu je nutné znovu spustit úlohu 'Chytré vyhledávání' pro všechny obrázky.",
|
||||
"machine_learning_duplicate_detection": "Kontrola duplicit",
|
||||
"machine_learning_duplicate_detection_enabled": "Povolit kontrolu duplicit",
|
||||
@@ -321,7 +332,7 @@
|
||||
"transcoding_policy_description": "Nastavte po překódování videa",
|
||||
"transcoding_preferred_hardware_device": "Preferované hardwarové zařízení",
|
||||
"transcoding_preferred_hardware_device_description": "Platí pouze pro VAAPI a QSV. Nastaví dri uzel použitý pro hardwarové překódování.",
|
||||
"transcoding_preset_preset": "Preset (-preset)",
|
||||
"transcoding_preset_preset": "Předvolba (-preset)",
|
||||
"transcoding_preset_preset_description": "Rychlost komprese. Pomalejší předvolby vytvářejí menší soubory a zvyšují kvalitu při dosažení určitého datového toku. VP9 ignoruje rychlosti vyšší než 'faster'.",
|
||||
"transcoding_reference_frames": "Referenční snímky",
|
||||
"transcoding_reference_frames_description": "Počet referenčních snímků při kompresi daného snímku. Vyšší hodnoty zvyšují účinnost komprese, ale zpomalují kódování. Hodnota 0 toto nastavuje automaticky.",
|
||||
@@ -347,6 +358,9 @@
|
||||
"trash_number_of_days_description": "Počet dní, po které je třeba položku ponechat v koši, než bude trvale odstraněna",
|
||||
"trash_settings": "Koš",
|
||||
"trash_settings_description": "Správa nastavení koše",
|
||||
"unlink_all_oauth_accounts": "Odpojit všechny účty OAuth",
|
||||
"unlink_all_oauth_accounts_description": "Nezapomeňte odpojit všechny OAuth účty před přechodem k novému poskytovateli.",
|
||||
"unlink_all_oauth_accounts_prompt": "Opravdu chcete odpojit všechny účty OAuth? Tím se resetuje ID OAuth pro každého uživatele a tento úkon nelze vrátit zpět.",
|
||||
"user_cleanup_job": "Promazání uživatelů",
|
||||
"user_delete_delay": "Účet a položky uživatele <b>{user}</b> budou trvale smazány za {delay, plural, one {# den} few {# dny} other {# dní}}.",
|
||||
"user_delete_delay_settings": "Odložení odstranění",
|
||||
@@ -374,7 +388,7 @@
|
||||
"administration": "Administrace",
|
||||
"advanced": "Pokročilé",
|
||||
"advanced_settings_beta_timeline_subtitle": "Vyzkoušejte nové prostředí aplikace",
|
||||
"advanced_settings_beta_timeline_title": "Časová osa beta verze",
|
||||
"advanced_settings_beta_timeline_title": "Beta verze časové osy",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "Tuto možnost použijte k filtrování médií během synchronizace na základě alternativních kritérií. Tuto možnost vyzkoušejte pouze v případě, že máte problémy s detekcí všech alb v aplikaci.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[EXPERIMENTÁLNÍ] Použít alternativní filtr pro synchronizaci alb zařízení",
|
||||
"advanced_settings_log_level_title": "Úroveň protokolování: {level}",
|
||||
@@ -397,6 +411,7 @@
|
||||
"album_cover_updated": "Obal alba aktualizován",
|
||||
"album_delete_confirmation": "Opravdu chcete album {album} odstranit?",
|
||||
"album_delete_confirmation_description": "Pokud je toto album sdíleno, ostatní uživatelé k němu již nebudou mít přístup.",
|
||||
"album_deleted": "Album smazáno",
|
||||
"album_info_card_backup_album_excluded": "VYLOUČENO",
|
||||
"album_info_card_backup_album_included": "ZAHRNUTO",
|
||||
"album_info_updated": "Informace o albu aktualizovány",
|
||||
@@ -474,7 +489,7 @@
|
||||
"asset_list_settings_subtitle": "Nastavení rozložení mřížky fotografií",
|
||||
"asset_list_settings_title": "Mřížka fotografií",
|
||||
"asset_offline": "Offline položka",
|
||||
"asset_offline_description": "Toto externí položka se již na disku nenachází. Obraťte se na Immich správce a požádejte o pomoc.",
|
||||
"asset_offline_description": "Toto externí položka se již na disku nenachází. Obraťte se na správce Immich a požádejte o pomoc.",
|
||||
"asset_restored_successfully": "Položka úspěšně obnovena",
|
||||
"asset_skipped": "Přeskočeno",
|
||||
"asset_skipped_in_trash": "V koši",
|
||||
@@ -485,7 +500,9 @@
|
||||
"assets": "Položky",
|
||||
"assets_added_count": "{count, plural, one {Přidána # položka} few {Přidány # položky} other {Přidáno # položek}}",
|
||||
"assets_added_to_album_count": "Do alba {count, plural, one {byla přidána # položka} few {byly přidány # položky} other {bylo přidáno # položek}}",
|
||||
"assets_added_to_albums_count": "{assetTotal, plural, one {Přidána # položka} few {Přidány # položky} other {Přidáno # položek}} do {albumTotal} alb",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {Položku} other {Položky}} nelze přidat do alba",
|
||||
"assets_cannot_be_added_to_albums": "{count, plural, one {Položku} other {Položky}} nelze přidat do žádného z alb",
|
||||
"assets_count": "{count, plural, one {# položka} few {# položky} other {# položek}}",
|
||||
"assets_deleted_permanently": "{count} položek trvale odstraněno",
|
||||
"assets_deleted_permanently_from_server": "{count} položek trvale odstraněno z Immich serveru",
|
||||
@@ -502,6 +519,7 @@
|
||||
"assets_trashed_count": "{count, plural, one {Vyhozena # položka} few {Vyhozeny # položky} other {Vyhozeno # položek}}",
|
||||
"assets_trashed_from_server": "{count} položek vyhozeno do koše na Immich serveru",
|
||||
"assets_were_part_of_album_count": "{count, plural, one {Položka byla} other {Položky byly}} součástí alba",
|
||||
"assets_were_part_of_albums_count": "{count, plural, one {Položka již byla} other {Položky již byly}} součástí alb",
|
||||
"authorized_devices": "Autorizovaná zařízení",
|
||||
"automatic_endpoint_switching_subtitle": "Připojit se místně přes určenou Wi-Fi, pokud je k dispozici, a používat alternativní připojení jinde",
|
||||
"automatic_endpoint_switching_title": "Automatické přepínání URL",
|
||||
@@ -510,6 +528,7 @@
|
||||
"back_close_deselect": "Zpět, zavřít nebo zrušit výběr",
|
||||
"background_location_permission": "Povolení polohy na pozadí",
|
||||
"background_location_permission_content": "Aby bylo možné přepínat sítě při běhu na pozadí, musí mít Immich *vždy* přístup k přesné poloze, aby mohl zjistit název Wi-Fi sítě",
|
||||
"backup": "Záloha",
|
||||
"backup_album_selection_page_albums_device": "Alba v zařízení ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Klepnutím na položku ji zahrnete, opětovným klepnutím ji vyloučíte",
|
||||
"backup_album_selection_page_assets_scatter": "Položky mohou být roztroušeny ve více albech. To umožňuje zahrnout nebo vyloučit alba během procesu zálohování.",
|
||||
@@ -570,10 +589,12 @@
|
||||
"backup_manual_in_progress": "Nahrávání již probíhá. Zkuste to znovu později",
|
||||
"backup_manual_success": "Úspěch",
|
||||
"backup_manual_title": "Stav nahrávání",
|
||||
"backup_options": "Možnosti zálohování",
|
||||
"backup_options_page_title": "Nastavení záloh",
|
||||
"backup_setting_subtitle": "Správa nastavení zálohování na pozadí a na popředí",
|
||||
"backup_settings_subtitle": "Správa nastavení nahrávání",
|
||||
"backward": "Pozpátku",
|
||||
"beta_sync": "Stav synchronizace beta verze",
|
||||
"beta_sync": "Stav synchronizace (beta)",
|
||||
"beta_sync_subtitle": "Správa nového systému synchronizace",
|
||||
"biometric_auth_enabled": "Biometrické ověřování je povoleno",
|
||||
"biometric_locked_out": "Jste vyloučeni z biometrického ověřování",
|
||||
@@ -641,6 +662,7 @@
|
||||
"clear": "Vymazat",
|
||||
"clear_all": "Vymazat vše",
|
||||
"clear_all_recent_searches": "Vymazat všechna nedávná vyhledávání",
|
||||
"clear_file_cache": "Vymazat mezipaměť souborů",
|
||||
"clear_message": "Vymazat zprávu",
|
||||
"clear_value": "Vymazat hodnotu",
|
||||
"client_cert_dialog_msg_confirm": "OK",
|
||||
@@ -711,6 +733,7 @@
|
||||
"create_new_user": "Vytvořit nového uživatele",
|
||||
"create_shared_album_page_share_add_assets": "PŘIDAT POLOŽKY",
|
||||
"create_shared_album_page_share_select_photos": "Vybrat fotografie",
|
||||
"create_shared_link": "Vytvořit sdílený odkaz",
|
||||
"create_tag": "Vytvořit značku",
|
||||
"create_tag_description": "Vytvoření nové značky. U vnořených značek zadejte celou cestu ke značce včetně dopředných lomítek.",
|
||||
"create_user": "Vytvořit uživatele",
|
||||
@@ -723,6 +746,7 @@
|
||||
"current_server_address": "Aktuální adresa serveru",
|
||||
"custom_locale": "Vlastní lokalizace",
|
||||
"custom_locale_description": "Formátovat datumy a čísla podle jazyka a oblasti",
|
||||
"custom_url": "Vlastní URL",
|
||||
"daily_title_text_date": "EEEE, d. MMMM",
|
||||
"daily_title_text_date_year": "EEEE, d. MMMM y",
|
||||
"dark": "Tmavý",
|
||||
@@ -734,6 +758,7 @@
|
||||
"date_of_birth_saved": "Datum narození úspěšně uloženo",
|
||||
"date_range": "Rozsah dat",
|
||||
"day": "Den",
|
||||
"days": "Dnů",
|
||||
"deduplicate_all": "Odstranit všechny duplicity",
|
||||
"deduplication_criteria_1": "Velikost obrázku v bajtech",
|
||||
"deduplication_criteria_2": "Počet EXIF dat",
|
||||
@@ -742,7 +767,8 @@
|
||||
"default_locale": "Výchozí jazyk",
|
||||
"default_locale_description": "Formátovat datumy a čísla podle místního prostředí prohlížeče",
|
||||
"delete": "Smazat",
|
||||
"delete_action_prompt": "{count} trvale smazaných",
|
||||
"delete_action_confirmation_message": "Opravdu chcete odstranit tuto položku? Tato akce přesune položku do serverového koše a zeptá se vás, zda ji chcete odstranit lokálně",
|
||||
"delete_action_prompt": "{count} smazáno",
|
||||
"delete_album": "Smazat album",
|
||||
"delete_api_key_prompt": "Opravdu chcete tento API klíč odstranit?",
|
||||
"delete_dialog_alert": "Tyto položky budou trvale smazány z aplikace Immich i z vašeho zařízení",
|
||||
@@ -759,7 +785,9 @@
|
||||
"delete_local_action_prompt": "{count} smazáno lokálně",
|
||||
"delete_local_dialog_ok_backed_up_only": "Smazat pouze zálohované",
|
||||
"delete_local_dialog_ok_force": "Přesto smazat",
|
||||
"delete_others": "Odstranit ostatní",
|
||||
"delete_others": "Smazat ostatní",
|
||||
"delete_permanently": "Trvale smazat",
|
||||
"delete_permanently_action_prompt": "{count} trvale smazáno",
|
||||
"delete_shared_link": "Smazat sdílený odkaz",
|
||||
"delete_shared_link_dialog_title": "Odstranit sdílený odkaz",
|
||||
"delete_tag": "Smazat značku",
|
||||
@@ -815,8 +843,12 @@
|
||||
"edit": "Upravit",
|
||||
"edit_album": "Upravit album",
|
||||
"edit_avatar": "Upravit avatar",
|
||||
"edit_birthday": "Upravit datum narození",
|
||||
"edit_date": "Upravit datum",
|
||||
"edit_date_and_time": "Upravit datum a čas",
|
||||
"edit_date_and_time_action_prompt": "{count} časových údajů upraveno",
|
||||
"edit_date_and_time_by_offset": "Posunout datum",
|
||||
"edit_date_and_time_by_offset_interval": "Nový rozsah dat: {from} – {to}",
|
||||
"edit_description": "Upravit popis",
|
||||
"edit_description_prompt": "Vyberte nový popis:",
|
||||
"edit_exclusion_pattern": "Upravit vzor vyloučení",
|
||||
@@ -889,6 +921,7 @@
|
||||
"failed_to_load_notifications": "Nepodařilo se načíst oznámení",
|
||||
"failed_to_load_people": "Chyba načítání osob",
|
||||
"failed_to_remove_product_key": "Nepodařilo se odebrat klíč produktu",
|
||||
"failed_to_reset_pin_code": "Nepodařilo se resetovat PIN kód",
|
||||
"failed_to_stack_assets": "Nepodařilo se seskupit položky",
|
||||
"failed_to_unstack_assets": "Nepodařilo se zrušit seskupení položek",
|
||||
"failed_to_update_notification_status": "Nepodařilo se aktualizovat stav oznámení",
|
||||
@@ -897,6 +930,7 @@
|
||||
"paths_validation_failed": "{paths, plural, one {# cesta neprošla} few {# cesty neprošly} other {# cest neprošlo}} kontrolou",
|
||||
"profile_picture_transparent_pixels": "Profilové obrázky nemohou mít průhledné pixely. Obrázek si prosím zvětšete nebo posuňte.",
|
||||
"quota_higher_than_disk_size": "Nastavili jste kvótu vyšší, než je velikost disku",
|
||||
"something_went_wrong": "Něco se pokazilo",
|
||||
"unable_to_add_album_users": "Nelze přidat uživatele do alba",
|
||||
"unable_to_add_assets_to_shared_link": "Nelze přidat položky do sdíleného odkazu",
|
||||
"unable_to_add_comment": "Nelze přidat komentář",
|
||||
@@ -982,13 +1016,11 @@
|
||||
},
|
||||
"exif": "Exif",
|
||||
"exif_bottom_sheet_description": "Přidat popis...",
|
||||
"exif_bottom_sheet_description_error": "Chyba při aktualizaci popisu",
|
||||
"exif_bottom_sheet_details": "PODROBNOSTI",
|
||||
"exif_bottom_sheet_location": "POLOHA",
|
||||
"exif_bottom_sheet_people": "LIDÉ",
|
||||
"exif_bottom_sheet_person_add_person": "Přidat jméno",
|
||||
"exif_bottom_sheet_person_age_months": "{months} měsíců",
|
||||
"exif_bottom_sheet_person_age_year_months": "1 rok a {months} měsíců",
|
||||
"exif_bottom_sheet_person_age_years": "{years} let",
|
||||
"exit_slideshow": "Ukončit prezentaci",
|
||||
"expand_all": "Rozbalit vše",
|
||||
"experimental_settings_new_asset_list_subtitle": "Zpracovávám",
|
||||
@@ -1002,6 +1034,8 @@
|
||||
"explorer": "Průzkumník",
|
||||
"export": "Export",
|
||||
"export_as_json": "Exportovat jako JSON",
|
||||
"export_database": "Exportovat databázi",
|
||||
"export_database_description": "Exportovat databázi SQLite",
|
||||
"extension": "Přípona",
|
||||
"external": "Externí",
|
||||
"external_libraries": "Externí knihovny",
|
||||
@@ -1028,11 +1062,13 @@
|
||||
"filter_people": "Filtrovat lidi",
|
||||
"filter_places": "Filtrovat místa",
|
||||
"find_them_fast": "Najděte je rychle vyhledáním jejich jména",
|
||||
"first": "První",
|
||||
"fix_incorrect_match": "Opravit nesprávnou shodu",
|
||||
"folder": "Složka",
|
||||
"folder_not_found": "Složka nebyla nalezena",
|
||||
"folders": "Složky",
|
||||
"folders_feature_description": "Procházení zobrazení složek s fotografiemi a videi v souborovém systému",
|
||||
"forgot_pin_code_question": "Zapomněli jste PIN?",
|
||||
"forward": "Dopředu",
|
||||
"gcast_enabled": "Google Cast",
|
||||
"gcast_enabled_description": "Tato funkce načítá externí zdroje z Googlu, aby mohla fungovat.",
|
||||
@@ -1087,6 +1123,7 @@
|
||||
"home_page_upload_err_limit": "Lze nahrát nejvýše 30 položek najednou, přeskakuji",
|
||||
"host": "Hostitel",
|
||||
"hour": "Hodina",
|
||||
"hours": "Hodin",
|
||||
"id": "ID",
|
||||
"idle": "Nečinnost",
|
||||
"ignore_icloud_photos": "Ignorovat fotografie na iCloudu",
|
||||
@@ -1146,10 +1183,13 @@
|
||||
"language_no_results_title": "Nebyly nalezeny žádné jazyky",
|
||||
"language_search_hint": "Vyhledat jazyk...",
|
||||
"language_setting_description": "Vyberte upřednostňovaný jazyk",
|
||||
"large_files": "Velké soubory",
|
||||
"last": "Poslední",
|
||||
"last_seen": "Naposledy viděno",
|
||||
"latest_version": "Nejnovější verze",
|
||||
"latitude": "Zeměpisná šířka",
|
||||
"leave": "Opustit",
|
||||
"leave_album": "Opustit album",
|
||||
"lens_model": "Model objektivu",
|
||||
"let_others_respond": "Nechte ostatní reagovat",
|
||||
"level": "Úroveň",
|
||||
@@ -1163,9 +1203,9 @@
|
||||
"library_page_sort_title": "Podle názvu alba",
|
||||
"licenses": "Licence",
|
||||
"light": "Světlý",
|
||||
"like_deleted": "Lajk smazán",
|
||||
"like": "Líbí se mi",
|
||||
"like_deleted": "Oblíbení smazáno",
|
||||
"link_motion_video": "Připojit pohyblivé video",
|
||||
"link_options": "Možnosti odkazu",
|
||||
"link_to_oauth": "Propojit s OAuth",
|
||||
"linked_oauth_account": "Propojený OAuth účet",
|
||||
"list": "Seznam",
|
||||
@@ -1230,8 +1270,7 @@
|
||||
"manage_your_devices": "Správa přihlášených zařízení",
|
||||
"manage_your_oauth_connection": "Správa OAuth propojení",
|
||||
"map": "Mapa",
|
||||
"map_assets_in_bound": "{count} fotka",
|
||||
"map_assets_in_bounds": "{count} fotek",
|
||||
"map_assets_in_bounds": "{count, plural, =0 {Žádná fotka v této oblasti} one {# fotka} few{# fotky} other {# fotek}}",
|
||||
"map_cannot_get_user_location": "Nelze zjistit polohu uživatele",
|
||||
"map_location_dialog_yes": "Ano",
|
||||
"map_location_picker_page_use_location": "Použít tuto polohu",
|
||||
@@ -1239,7 +1278,6 @@
|
||||
"map_location_service_disabled_title": "Služba určování polohy je zakázána",
|
||||
"map_marker_for_images": "Značka na mapě pro snímky pořízené v {city}, {country}",
|
||||
"map_marker_with_image": "Značka mapy s obrázkem",
|
||||
"map_no_assets_in_bounds": "Žádné fotografie v této oblasti",
|
||||
"map_no_location_permission_content": "Oprávnění polohy je nutné pro zobrazení fotek z vaší aktuální polohy. Chcete oprávnění nyní povolit?",
|
||||
"map_no_location_permission_title": "Oprávnění polohy zamítnuto",
|
||||
"map_settings": "Nastavení mapy",
|
||||
@@ -1276,6 +1314,7 @@
|
||||
"merged_people_count": "{count, plural, one {Sloučena # osoba} few {Sloučeny # osoby} other {Sloučeno # lidí}}",
|
||||
"minimize": "Minimalizovat",
|
||||
"minute": "Minuta",
|
||||
"minutes": "Minut",
|
||||
"missing": "Chybějící",
|
||||
"model": "Model",
|
||||
"month": "Měsíc",
|
||||
@@ -1295,6 +1334,9 @@
|
||||
"my_albums": "Moje alba",
|
||||
"name": "Jméno",
|
||||
"name_or_nickname": "Jméno nebo přezdívka",
|
||||
"network_requirement_photos_upload": "Pro zálohování fotografií používat mobilní data",
|
||||
"network_requirement_videos_upload": "Pro zálohování videí používat mobilní data",
|
||||
"network_requirements_updated": "Požadavky na síť se změnily, fronta zálohování se vytvoří znovu",
|
||||
"networking_settings": "Síť",
|
||||
"networking_subtitle": "Správa nastavení koncového bodu serveru",
|
||||
"never": "Nikdy",
|
||||
@@ -1346,6 +1388,7 @@
|
||||
"oauth": "OAuth",
|
||||
"official_immich_resources": "Oficiální zdroje Immich",
|
||||
"offline": "Offline",
|
||||
"offset": "Posun",
|
||||
"ok": "Ok",
|
||||
"oldest_first": "Nejstarší první",
|
||||
"on_this_device": "V tomto zařízení",
|
||||
@@ -1423,6 +1466,9 @@
|
||||
"permission_onboarding_permission_limited": "Přístup omezen. Chcete-li používat Immich k zálohování a správě celé vaší kolekce galerií, povolte v nastavení přístup k fotkám a videím.",
|
||||
"permission_onboarding_request": "Immich potřebuje přístup k zobrazení vašich fotek a videí.",
|
||||
"person": "Osoba",
|
||||
"person_age_months": "{months, plural, one {# měsíc} few {# měsíce} other {# měsíců}}",
|
||||
"person_age_year_months": "1 rok a {months, plural, one {# měsíc} few {# měsíce} other {# měsíců}}",
|
||||
"person_age_years": "{years, plural, one {# rok} few {# roky} other {# let}}",
|
||||
"person_birthdate": "Narozen(a) {date}",
|
||||
"person_hidden": "{name}{hidden, select, true { (skryto)} other {}}",
|
||||
"photo_shared_all_users": "Vypadá to, že jste fotky sdíleli se všemi uživateli, nebo nemáte žádného uživatele, se kterým byste je mohli sdílet.",
|
||||
@@ -1568,8 +1614,11 @@
|
||||
"reset_password": "Obnovit heslo",
|
||||
"reset_people_visibility": "Obnovit viditelnost lidí",
|
||||
"reset_pin_code": "Resetovat PIN kód",
|
||||
"reset_sqlite": "Obnovit SQLite databázi",
|
||||
"reset_sqlite_confirmation": "Jste si jisti, že chcete obnovit SQLite databázi? Pro opětovnou synchronizaci dat se budete muset odhlásit a znovu přihlásit",
|
||||
"reset_pin_code_description": "Pokud jste zapomněli svůj PIN kód, obraťte se na správce serveru pro jeho resetování",
|
||||
"reset_pin_code_success": "PIN kód úspěšně resetován",
|
||||
"reset_pin_code_with_password": "Svůj PIN kód můžete vždy resetovat pomocí hesla",
|
||||
"reset_sqlite": "Obnovit databázi SQLite",
|
||||
"reset_sqlite_confirmation": "Jste si jisti, že chcete obnovit databázi SQLite? Pro opětovnou synchronizaci dat se budete muset odhlásit a znovu přihlásit",
|
||||
"reset_sqlite_success": "Obnovení SQLite databáze proběhlo úspěšně",
|
||||
"reset_to_default": "Obnovit výchozí nastavení",
|
||||
"resolve_duplicates": "Vyřešit duplicity",
|
||||
@@ -1582,6 +1631,7 @@
|
||||
"resume": "Pokračovat",
|
||||
"retry_upload": "Opakování nahrávání",
|
||||
"review_duplicates": "Kontrola duplicit",
|
||||
"review_large_files": "Kontrola velkých souborů",
|
||||
"role": "Role",
|
||||
"role_editor": "Editor",
|
||||
"role_viewer": "Divák",
|
||||
@@ -1739,6 +1789,7 @@
|
||||
"shared_link_clipboard_copied_massage": "Zkopírováno do schránky",
|
||||
"shared_link_clipboard_text": "Odkaz: {link}\nHeslo: {password}",
|
||||
"shared_link_create_error": "Chyba při vytváření sdíleného odkazu",
|
||||
"shared_link_custom_url_description": "Přístup k tomuto sdílenému odkazu pomocí vlastního URL",
|
||||
"shared_link_edit_description_hint": "Zadejte popis sdílení",
|
||||
"shared_link_edit_expire_after_option_day": "1 den",
|
||||
"shared_link_edit_expire_after_option_days": "{count} dní",
|
||||
@@ -1764,6 +1815,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "Spravovat sdílené odkazy",
|
||||
"shared_link_options": "Možnosti sdíleného odkazu",
|
||||
"shared_link_password_description": "Vyžadovat heslo pro přístup k tomuto sdílenému odkazu",
|
||||
"shared_links": "Sdílené odkazy",
|
||||
"shared_links_description": "Sdílet fotky a videa pomocí odkazu",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, one {# sdílená fotografie a video.} few {# sdílené fotografie a videa.} other {# sdílených fotografií a videí.}}",
|
||||
@@ -1813,6 +1865,7 @@
|
||||
"sort_created": "Datum vytvoření",
|
||||
"sort_items": "Počet položek",
|
||||
"sort_modified": "Datum modifikace",
|
||||
"sort_newest": "Nejnovější fotka",
|
||||
"sort_oldest": "Nejstarší fotka",
|
||||
"sort_people_by_similarity": "Seřadit lidi podle podobnosti",
|
||||
"sort_recent": "Nejnovější fotka",
|
||||
@@ -1874,7 +1927,7 @@
|
||||
"theme_setting_image_viewer_quality_title": "Kvalita prohlížeče obrázků",
|
||||
"theme_setting_primary_color_subtitle": "Zvolte barvu pro hlavní akce a zvýraznění.",
|
||||
"theme_setting_primary_color_title": "Hlavní barva",
|
||||
"theme_setting_system_primary_color_title": "Použití systémové barvy",
|
||||
"theme_setting_system_primary_color_title": "Použít systémovou barvu",
|
||||
"theme_setting_system_theme_switch": "Automaticky (podle systemového nastavení)",
|
||||
"theme_setting_theme_subtitle": "Vyberte nastavení tématu aplikace",
|
||||
"theme_setting_three_stage_loading_subtitle": "Třístupňové načítání může zvýšit výkonnost načítání, ale vede k výrazně vyššímu zatížení sítě",
|
||||
@@ -1941,11 +1994,13 @@
|
||||
"updated_at": "Aktualizováno",
|
||||
"updated_password": "Heslo aktualizováno",
|
||||
"upload": "Nahrát",
|
||||
"upload_action_prompt": "{count} ve frontě pro nahrání",
|
||||
"upload_concurrency": "Souběžnost nahrávání",
|
||||
"upload_details": "Detaily nahrávání",
|
||||
"upload_dialog_info": "Chcete zálohovat vybrané položky na server?",
|
||||
"upload_dialog_title": "Nahrát položku",
|
||||
"upload_errors": "Nahrávání bylo dokončeno s {count, plural, one {# chybou} other {# chybami}}, obnovte stránku pro zobrazení nových položek.",
|
||||
"upload_finished": "Nahrávání dokončeno",
|
||||
"upload_progress": "Zbývá {remaining, number} - Zpracováno {processed, number}/{total, number}",
|
||||
"upload_skipped_duplicates": "{count, plural, one {Přeskočena # duplicitní položka} few {Přeskočeny # duplicitní položky} other {Přeskočeno # duplicitních položek}}",
|
||||
"upload_status_duplicates": "Duplicity",
|
||||
@@ -1954,6 +2009,7 @@
|
||||
"upload_success": "Nahrání proběhlo úspěšně, obnovením stránky se zobrazí nově nahrané položky.",
|
||||
"upload_to_immich": "Nahrát do Immich ({count})",
|
||||
"uploading": "Nahrávání",
|
||||
"uploading_media": "Nahrávání médií",
|
||||
"url": "URL",
|
||||
"usage": "Využití",
|
||||
"use_biometric": "Použít biometrické údaje",
|
||||
@@ -1983,7 +2039,7 @@
|
||||
"version_announcement_closing": "Váš přítel Alex",
|
||||
"version_announcement_message": "Ahoj! K dispozici je nová verze aplikace Immich. Věnujte prosím chvíli přečtení <link>poznámek k vydání</link> a ujistěte se, že je vaše nastavení aktuální, abyste předešli případným chybným konfiguracím, zejména pokud používáte WatchTower nebo jiný mechanismus, který se stará o automatickou aktualizaci instance aplikace Immich.",
|
||||
"version_history": "Historie verzí",
|
||||
"version_history_item": "Nainstalováno {version} dne {date}",
|
||||
"version_history_item": "Verze {version} nainstalována dne {date}",
|
||||
"video": "Video",
|
||||
"video_hover_setting": "Přehrávat miniaturu videa po najetí myší",
|
||||
"video_hover_setting_description": "Přehrát miniaturu videa při najetí myší na položku. I když je přehrávání vypnuto, lze jej spustit najetím na ikonu přehrávání.",
|
||||
|
||||
10
i18n/cv.json
@@ -4,6 +4,7 @@
|
||||
"account_settings": "Шута ҫырни ӗнерленӳ",
|
||||
"acknowledge": "Çирӗплет",
|
||||
"action": "Ӗçлени",
|
||||
"action_common_update": "Ҫӗнет",
|
||||
"actions": "Ӗҫсем",
|
||||
"active": "Хастар",
|
||||
"activity": "Хастарлӑх",
|
||||
@@ -13,6 +14,8 @@
|
||||
"add_a_location": "Вырӑн хуш",
|
||||
"add_a_name": "Ятне хуш",
|
||||
"add_a_title": "Ят хуш",
|
||||
"add_birthday": "Ҫуралнӑ кун хушӑр",
|
||||
"add_endpoint": "Вӗҫӗмлӗ пӑнчӑ хушар",
|
||||
"add_exclusion_pattern": "Кӑларса пӑрахмалли йӗрке хуш",
|
||||
"add_import_path": "Импорт ҫулне хуш",
|
||||
"add_location": "Вырӑн хуш",
|
||||
@@ -20,6 +23,7 @@
|
||||
"add_partner": "Мӑшӑр хуш",
|
||||
"add_path": "Ҫулне хуш",
|
||||
"add_photos": "Сӑнӳкерчӗксем хуш",
|
||||
"add_tag": "Тег хуш",
|
||||
"add_to": "Мӗн те пулин хуш…",
|
||||
"add_to_album": "Альбома хуш",
|
||||
"add_to_shared_album": "Пӗрлехи альбома хуш",
|
||||
@@ -28,9 +32,13 @@
|
||||
"added_to_favorites": "Суйласа илнине хушнӑ",
|
||||
"added_to_favorites_count": "Суйласа илнине {count, number} хушнӑ",
|
||||
"admin": {
|
||||
"admin_user": "Усӑҫ админ",
|
||||
"asset_offline_description": "Библиотекӑн ҫак тулаш файлне дискра урӑх тупайман, карҫинккана куҫарнӑ. Енчен те файла вулавӑш ӑшне куҫарнӑ пулсан, тивӗҫлӗ ҫӗнӗ ресурс тупас тесен хӑвӑрӑн вӑхӑтлӑх шкалӑна тӗрӗслӗр. Ҫак файла ҫӗнӗрен чӗртес тесен файл патне каймалли ҫула Immich валли аяларах ҫитернине курса ӗненӗр, библиотекӑна сканерланине пурнӑҫлӑр.",
|
||||
"authentication_settings": "Ауттентихвикатси ӗнерленӳсем",
|
||||
"authentication_settings_disable_all": "Эсир кӗмелли пур меслетсене те чарса лартасшӑн тесе шутлатӑр-и? Кӗмелли шӑтӑка пӗтӗмпех уҫаҫҫӗ.",
|
||||
"background_task_job": "Курăнман ӗҫсем",
|
||||
"backup_database": "Пĕлĕм пухмачĕ туса",
|
||||
"backup_onboarding_title": "Сыхлӑх копписем",
|
||||
"cleared_jobs": "Ӗҫсене тасатнӑ:{job}",
|
||||
"confirm_email_below": "Ҫирӗплетес тесен, аяларах «{email}» кӗртӗр",
|
||||
"confirm_reprocess_all_faces": "Пӗтӗм сӑнӗсене тепӗр хут палӑртас килет тесе шанатӑр-и? Ҫавӑн пекех ятсене пур ҫынран та хуратӗҫ.",
|
||||
@@ -45,6 +53,8 @@
|
||||
"image_preview_title": "Малтанлӑха пӑхмалли ӗнерлевсем",
|
||||
"image_quality": "Пахалӑх",
|
||||
"image_resolution": "Виҫе",
|
||||
"image_settings": "Сӑнӳкерчӗк ӗнерленӳсем",
|
||||
"image_thumbnail_title": "Пӗчӗк ӳкерчӗксен ӗнерленӳсем",
|
||||
"map_gps_settings": "Карттӑ тата GPS ĕнерленĕвĕ",
|
||||
"map_gps_settings_description": "Карттӑпа GPS (каялла геоюмлани) ӗнерленисене йӗркелесе тӑрӑр",
|
||||
"map_settings": "Карттӑ"
|
||||
|
||||
54
i18n/da.json
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "Tilføj en placering",
|
||||
"add_a_name": "Tilføj et navn",
|
||||
"add_a_title": "Tilføj en titel",
|
||||
"add_birthday": "Tilføj en fødselsdag",
|
||||
"add_endpoint": "Tilføj endepunkt",
|
||||
"add_exclusion_pattern": "Tilføj udelukkelsesmønster",
|
||||
"add_import_path": "Tilføj importsti",
|
||||
@@ -31,10 +32,10 @@
|
||||
"add_url": "Tilføj URL",
|
||||
"added_to_archive": "Tilføjet til arkiv",
|
||||
"added_to_favorites": "Tilføjet til favoritter",
|
||||
"added_to_favorites_count": "Tilføjet {count, number} til favoritter",
|
||||
"added_to_favorites_count": "Tilføjede {count, number} til favoritter",
|
||||
"admin": {
|
||||
"add_exclusion_pattern_description": "Tilføj udelukkelsesmønstre. Globbing ved hjælp af *, ** og ? understøttes. For at ignorere alle filer i enhver mappe med navnet \"Raw\", brug \"**/Raw/**\". For at ignorere alle filer, der slutter på \".tif\", brug \"**/*.tif\". For at ignorere en absolut sti, brug \"/sti/til/ignoreret/**\".",
|
||||
"admin_user": "Administrator bruger",
|
||||
"admin_user": "Administratorbruger",
|
||||
"asset_offline_description": "Denne eksterne biblioteksressource findes ikke længere på disken og er blevet flyttet til papirkurven. Hvis filen blev flyttet inde i biblioteket, skal du tjekke din tidslinje for den nye tilsvarende ressource. For at gendanne denne ressource skal du sikre, at filstien nedenfor kan tilgås af Immich og scanne biblioteket.",
|
||||
"authentication_settings": "Godkendelsesindstillinger",
|
||||
"authentication_settings_description": "Administrer adgangskode, OAuth og andre godkendelsesindstillinger",
|
||||
@@ -44,6 +45,12 @@
|
||||
"backup_database": "Lav Database Dump",
|
||||
"backup_database_enable_description": "Slå database-backup til",
|
||||
"backup_keep_last_amount": "Mængde af tidligere backups, der skal gemmes",
|
||||
"backup_onboarding_1_description": "kopi på en anden fysisk lokation eller i skyen.",
|
||||
"backup_onboarding_2_description": "lokale kopier på separate enheder. Dette inkluderer de originale filer og en lokal backup af disse.",
|
||||
"backup_onboarding_3_description": "kopier af din data i alt, inklusiv de originale filer. Dette inkluderer 1 kopi på en anden fysisk lokation, og 2 lokale kopier.",
|
||||
"backup_onboarding_description": "En <backblaze-link>3-2-1 backup strategy</backblaze-link> anbefales for at beskytte dine data. En altomfattende backupløsning skulle gerne have kopier af dine uploadede billeder og videoer, samt Immich databasen.",
|
||||
"backup_onboarding_footer": "Referer venligst til <link>dokumentationen</link> for mere information om hvordan Immich backes op.",
|
||||
"backup_onboarding_parts_title": "En 3-2-1 backup inkluderer:",
|
||||
"backup_settings": "Database Backup-indstillinger",
|
||||
"backup_settings_description": "Administrer backupindstillinger for database.",
|
||||
"cleared_jobs": "Ryddet jobs til: {job}",
|
||||
@@ -167,6 +174,19 @@
|
||||
"migration_job": "Migrering",
|
||||
"migration_job_description": "Migrér miniaturebilleder for aktiver og ansigter til den seneste mappestruktur",
|
||||
"nightly_tasks_cluster_faces_setting_description": "Kør ansigtsgenkendelse på nye ansigter",
|
||||
"nightly_tasks_cluster_new_faces_setting": "Gruppér nye ansigter",
|
||||
"nightly_tasks_database_cleanup_setting": "Databaseoprydning opgaver",
|
||||
"nightly_tasks_database_cleanup_setting_description": "Ryd op i gamle, udløbne data fra databasen",
|
||||
"nightly_tasks_generate_memories_setting": "Generer minder",
|
||||
"nightly_tasks_generate_memories_setting_description": "Skab nye minder ud fra dine medier",
|
||||
"nightly_tasks_missing_thumbnails_setting": "Generer manglende miniaturebilleder",
|
||||
"nightly_tasks_missing_thumbnails_setting_description": "Sæt medier uden thumbnails i kø til generering af thumbnails",
|
||||
"nightly_tasks_settings": "Indstillinger for opgaver om natten",
|
||||
"nightly_tasks_settings_description": "Administrér opgaver om natten",
|
||||
"nightly_tasks_start_time_setting": "Starttidspunkt",
|
||||
"nightly_tasks_start_time_setting_description": "Tidspunktet hvor serveren begynder at køre opgaver om natten",
|
||||
"nightly_tasks_sync_quota_usage_setting": "Synkronisér kvoteforbrug",
|
||||
"nightly_tasks_sync_quota_usage_setting_description": "Opdater brugerens lagerkvote baseret på aktuelt forbrug",
|
||||
"no_paths_added": "Ingen stier tilføjet",
|
||||
"no_pattern_added": "Intet mønster tilføjet",
|
||||
"note_apply_storage_label_previous_assets": "Bemærk: For at anvende Lagringsmærkatet på tidligere uploadede mediefiler, kør",
|
||||
@@ -205,7 +225,7 @@
|
||||
"oauth_storage_quota_claim": "Lagringskvotefordring",
|
||||
"oauth_storage_quota_claim_description": "Sæt automatisk brugeres lagringskvote til denne nye fordrings værdi.",
|
||||
"oauth_storage_quota_default": "Standard lagringskvote (GiB)",
|
||||
"oauth_storage_quota_default_description": "Kvote i GiB som bruges, når der ikke bliver oplyst en fordring (Indtast 0 for uendelig kvote).",
|
||||
"oauth_storage_quota_default_description": "Kvote i GiB som bruges, når der ikke bliver oplyst en fordring.",
|
||||
"oauth_timeout": "Forespørgslen udløb",
|
||||
"oauth_timeout_description": "Udløbstid for forespørgsel i milisekunder",
|
||||
"password_enable_description": "Log ind med email og adgangskode",
|
||||
@@ -331,6 +351,7 @@
|
||||
"trash_number_of_days_description": "Antal dage aktiver i skraldespanden skal beholdes inden de fjernes permanent",
|
||||
"trash_settings": "Skraldeindstillinger",
|
||||
"trash_settings_description": "Administrér skraldeindstillinger",
|
||||
"unlink_all_oauth_accounts_description": "Husk at fjerne linket til alle OAuth konti før du migrerer til en ny udbyder.",
|
||||
"user_cleanup_job": "Bruger-oprydning",
|
||||
"user_delete_delay": "<b>{user}</b>'s konto og mediefiler vil blive planlagt til permanent sletning om {delay, plural, one {# dag} other {# dage}}.",
|
||||
"user_delete_delay_settings": "Slet forsinkelse",
|
||||
@@ -357,10 +378,12 @@
|
||||
"admin_password": "Administratoradgangskode",
|
||||
"administration": "Administration",
|
||||
"advanced": "Avanceret",
|
||||
"advanced_settings_beta_timeline_subtitle": "Prøv den nye app-oplevelse",
|
||||
"advanced_settings_beta_timeline_title": "Beta-tidslinje",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "Brug denne valgmulighed for at filtrere media under synkronisering baseret på alternative kriterier. Prøv kun denne hvis du har problemer med at appen ikke opdager alle albums.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[EKSPERIMENTEL] Brug alternativ enheds album synkroniserings filter",
|
||||
"advanced_settings_log_level_title": "Logniveau: {level}",
|
||||
"advanced_settings_prefer_remote_subtitle": "Nogle enheder tager meget lang tid om at indlæse miniaturebilleder af elementer på enheden. Aktiver denne indstilling for i stedetat indlæse elementer fra serveren.",
|
||||
"advanced_settings_prefer_remote_subtitle": "Nogle enheder er meget lang tid om at indlæse miniaturebilleder af lokale elementer. Aktiver denne indstilling for at indlæse elementer fra serveren i stedet.",
|
||||
"advanced_settings_prefer_remote_title": "Foretræk elementer på serveren",
|
||||
"advanced_settings_proxy_headers_subtitle": "Definer proxy headers Immich skal sende med hver netværks forespørgsel",
|
||||
"advanced_settings_proxy_headers_title": "Proxy Headers",
|
||||
@@ -443,11 +466,11 @@
|
||||
"asset_description_updated": "Mediefilsbeskrivelse er blevet opdateret",
|
||||
"asset_filename_is_offline": "Mediefil {filename} er offline",
|
||||
"asset_has_unassigned_faces": "Aktivet har ikke-tildelte ansigter",
|
||||
"asset_hashing": "Hashing…",
|
||||
"asset_hashing": "Hasher…",
|
||||
"asset_list_group_by_sub_title": "Gruppér efter",
|
||||
"asset_list_layout_settings_dynamic_layout_title": "Dynamisk layout",
|
||||
"asset_list_layout_settings_group_automatically": "Automatisk",
|
||||
"asset_list_layout_settings_group_by": "Gruppér elementer pr.",
|
||||
"asset_list_layout_settings_group_by": "Grupper elementer efter",
|
||||
"asset_list_layout_settings_group_by_month_day": "Måned + dag",
|
||||
"asset_list_layout_sub_title": "Udseende",
|
||||
"asset_list_settings_subtitle": "Indstillinger for billedgitterlayout",
|
||||
@@ -489,6 +512,7 @@
|
||||
"back_close_deselect": "Tilbage, luk eller fravælg",
|
||||
"background_location_permission": "Tilladelse til baggrundsplacering",
|
||||
"background_location_permission_content": "For at skifte netværk, når appen kører i baggrunden, skal Immich *altid* have præcis placeringsadgang, så appen kan læse WiFi-netværkets navn",
|
||||
"backup": "Sikkerhedskopier",
|
||||
"backup_album_selection_page_albums_device": "Albummer på enheden ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Tryk en gang for at inkludere, tryk to gange for at ekskludere",
|
||||
"backup_album_selection_page_assets_scatter": "Elementer kan være spredt på tværs af flere albummer. Albummer kan således inkluderes eller udelukkes under sikkerhedskopieringsprocessen.",
|
||||
@@ -533,7 +557,7 @@
|
||||
"backup_controller_page_none_selected": "Ingen valgte",
|
||||
"backup_controller_page_remainder": "Tilbageværende",
|
||||
"backup_controller_page_remainder_sub": "Tilbageværende billeder og albummer, at sikkerhedskopiere, fra valgte",
|
||||
"backup_controller_page_server_storage": "Serverlager",
|
||||
"backup_controller_page_server_storage": "Serverplads",
|
||||
"backup_controller_page_start_backup": "Start sikkerhedskopiering",
|
||||
"backup_controller_page_status_off": "Sikkerhedskopiering er slået fra",
|
||||
"backup_controller_page_status_on": "Sikkerhedskopiering er slået til",
|
||||
@@ -569,7 +593,7 @@
|
||||
"cache_settings_clear_cache_button": "Fjern cache",
|
||||
"cache_settings_clear_cache_button_title": "Fjern appens cache. Dette vil i stor grad påvirke appens ydeevne indtil cachen er genopbygget.",
|
||||
"cache_settings_duplicated_assets_clear_button": "RYD",
|
||||
"cache_settings_duplicated_assets_subtitle": "Billeder og videoer der er sortlistet af appen",
|
||||
"cache_settings_duplicated_assets_subtitle": "Billeder og videoer der er ignoreres af appen",
|
||||
"cache_settings_duplicated_assets_title": "Dublikerede elementer ({count})",
|
||||
"cache_settings_statistics_album": "Biblioteksminiaturer",
|
||||
"cache_settings_statistics_full": "Fulde billeder",
|
||||
@@ -955,9 +979,6 @@
|
||||
"exif_bottom_sheet_location": "LOKATION",
|
||||
"exif_bottom_sheet_people": "PERSONER",
|
||||
"exif_bottom_sheet_person_add_person": "Tilføj navn",
|
||||
"exif_bottom_sheet_person_age_months": "Alder {months} måned(er)",
|
||||
"exif_bottom_sheet_person_age_year_months": "Alder 1 år, {months} måned(er)",
|
||||
"exif_bottom_sheet_person_age_years": "Alder {years}",
|
||||
"exit_slideshow": "Afslut slideshow",
|
||||
"expand_all": "Udvid alle",
|
||||
"experimental_settings_new_asset_list_subtitle": "Under udarbejdelse",
|
||||
@@ -1043,7 +1064,7 @@
|
||||
"home_page_building_timeline": "Bygger tidslinjen",
|
||||
"home_page_delete_err_partner": "Kan endnu ikke slette partners elementer. Springer over",
|
||||
"home_page_delete_remote_err_local": "Lokale elementer i fjernsletningssektion. Springer over",
|
||||
"home_page_favorite_err_local": "Kan endnu ikke gøre lokale elementer til favoritter, springer over.",
|
||||
"home_page_favorite_err_local": "Det er ikke muligt at gøre lokale elementer til favoritter endnu, springer over",
|
||||
"home_page_favorite_err_partner": "Kan endnu ikke tilføje partners elementer som favoritter. Springer over",
|
||||
"home_page_first_time_notice": "Hvis det er din første gang i appen, bedes du vælge en sikkerhedskopi af albummer så tidlinjen kan blive fyldt med billeder og videoer fra albummerne",
|
||||
"home_page_locked_error_local": "Kan ikke flytte lokale mediefiler til låst mappe, springer over",
|
||||
@@ -1128,7 +1149,6 @@
|
||||
"light": "Lys",
|
||||
"like_deleted": "Ligesom slettet",
|
||||
"link_motion_video": "Link bevægelsesvideo",
|
||||
"link_options": "Link-indstillinger",
|
||||
"link_to_oauth": "Link til OAuth",
|
||||
"linked_oauth_account": "Tilsluttet OAuth-konto",
|
||||
"list": "Liste",
|
||||
@@ -1175,7 +1195,7 @@
|
||||
"login_password_changed_success": "Kodeordet blev opdateret",
|
||||
"logout_all_device_confirmation": "Er du sikker på, at du vil logge ud af alle enheder?",
|
||||
"logout_this_device_confirmation": "Er du sikker på, at du vil logge denne enhed ud?",
|
||||
"longitude": "Længde",
|
||||
"longitude": "Længdegrad",
|
||||
"look": "Kig",
|
||||
"loop_videos": "Gentag videoer",
|
||||
"loop_videos_description": "Aktivér for at genafspille videoer automatisk i detaljeret visning.",
|
||||
@@ -1190,8 +1210,7 @@
|
||||
"manage_your_devices": "Administrér dine enheder der er logget ind",
|
||||
"manage_your_oauth_connection": "Administrér din OAuth-tilslutning",
|
||||
"map": "Kort",
|
||||
"map_assets_in_bound": "{count} billede",
|
||||
"map_assets_in_bounds": "{count} billeder",
|
||||
"map_assets_in_bounds": "{count, plural, =0 {Ingen billeder i dette område} one {# billede} other {# billeder}}",
|
||||
"map_cannot_get_user_location": "Kan ikke finde brugerens placering",
|
||||
"map_location_dialog_yes": "Ja",
|
||||
"map_location_picker_page_use_location": "Brug denne placering",
|
||||
@@ -1199,7 +1218,6 @@
|
||||
"map_location_service_disabled_title": "Placeringstjenesten er deaktiveret",
|
||||
"map_marker_for_images": "Kortmarkør for billeder taget i {city}, {country}",
|
||||
"map_marker_with_image": "Kortmarkør med billede",
|
||||
"map_no_assets_in_bounds": "Der er ingen billeder i dette område",
|
||||
"map_no_location_permission_content": "Der kræves tilladelse til placeringen for at vise elementer fra din nuværende placering. Vil du give tilladelse?",
|
||||
"map_no_location_permission_title": "Placeringstilladelse blev afvist",
|
||||
"map_settings": "Kortindstillinger",
|
||||
@@ -1643,7 +1661,7 @@
|
||||
"setting_image_viewer_preview_title": "Indlæs forhåndsvisning af billedet",
|
||||
"setting_image_viewer_title": "Billeder",
|
||||
"setting_languages_apply": "Anvend",
|
||||
"setting_languages_subtitle": "Ændrer app-sprog",
|
||||
"setting_languages_subtitle": "Ændr app-sprog",
|
||||
"setting_notifications_notify_failures_grace_period": "Giv besked om fejl med sikkerhedskopiering i baggrunden: {duration}",
|
||||
"setting_notifications_notify_hours": "{count} timer",
|
||||
"setting_notifications_notify_immediately": "med det samme",
|
||||
|
||||
101
i18n/de.json
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "Standort hinzufügen",
|
||||
"add_a_name": "Name hinzufügen",
|
||||
"add_a_title": "Titel hinzufügen",
|
||||
"add_birthday": "Geburtsdatum hinzufügen",
|
||||
"add_endpoint": "Endpunkt hinzufügen",
|
||||
"add_exclusion_pattern": "Ausschlussmuster hinzufügen",
|
||||
"add_import_path": "Importpfad hinzufügen",
|
||||
@@ -27,6 +28,9 @@
|
||||
"add_to_album": "Zu Album hinzufügen",
|
||||
"add_to_album_bottom_sheet_added": "Zu {album} hinzugefügt",
|
||||
"add_to_album_bottom_sheet_already_exists": "Bereits in {album}",
|
||||
"add_to_album_toggle": "Auswahl umschalten für {album}",
|
||||
"add_to_albums": "Zu Alben hinzufügen",
|
||||
"add_to_albums_count": "Zu Alben hinzufügen ({count})",
|
||||
"add_to_shared_album": "Zu geteiltem Album hinzufügen",
|
||||
"add_url": "URL hinzufügen",
|
||||
"added_to_archive": "Zum Archiv hinzugefügt",
|
||||
@@ -41,9 +45,16 @@
|
||||
"authentication_settings_disable_all": "Bist du sicher, dass du alle Anmeldemethoden deaktivieren willst? Die Anmeldung wird vollständig deaktiviert.",
|
||||
"authentication_settings_reenable": "Nutze einen <link>Server-Befehl</link> zur Reaktivierung.",
|
||||
"background_task_job": "Hintergrundaufgaben",
|
||||
"backup_database": "Datenbanksicherung regelmäßig erstellen",
|
||||
"backup_database": "Datenbanksicherung erstellen",
|
||||
"backup_database_enable_description": "Datenbank regelmäßig sichern",
|
||||
"backup_keep_last_amount": "Anzahl der aufzubewahrenden früheren Backups",
|
||||
"backup_onboarding_1_description": "Offsite-Kopie in der Cloud oder an einem anderen physischen Ort.",
|
||||
"backup_onboarding_2_description": "Lokale Kopien auf verschiedenen Geräten. Dazu gehören die Hauptdateien und eine lokale Sicherung dieser Dateien.",
|
||||
"backup_onboarding_3_description": "3 komplette Kopien deiner Daten, inkl. der Originaldateien. Dies umfasst 1 Kopie an einem anderen Ort und 2 lokale Kopie.",
|
||||
"backup_onboarding_description": "Eine <backblaze-link>3-2-1 Backup-Strategie</backblaze-link> wird empfohlen, um deine Daten zu schützen. Du solltest sowohl Kopien deiner hochgeladenen Fotos/Videos als auch der Immich-Datenbank aufbewahren, um eine umfassende Backup-Lösung zu haben.",
|
||||
"backup_onboarding_footer": "Weitere Informationen zum Sichern von Immich findest du in der <link>Dokumentation</link>.",
|
||||
"backup_onboarding_parts_title": "Eine 3-2-1-Sicherung umfasst:",
|
||||
"backup_onboarding_title": "Backups",
|
||||
"backup_settings": "Einstellungen für Datenbanksicherung",
|
||||
"backup_settings_description": "Einstellungen zur regelmäßigen Sicherung der Datenbank. Hinweis: Diese Jobs werden nicht überwacht und du wirst nicht über Fehler informiert.",
|
||||
"cleared_jobs": "Folgende Aufgaben zurückgesetzt: {job}",
|
||||
@@ -120,7 +131,7 @@
|
||||
"machine_learning_duplicate_detection_setting_description": "Verwendung von CLIP-Embeddings zum Erkennen möglicher Duplikate",
|
||||
"machine_learning_enabled": "Maschinelles Lernen aktivieren",
|
||||
"machine_learning_enabled_description": "Wenn diese Option deaktiviert ist, werden alle ML-Funktionen unabhängig von den unten aufgeführten Einstellungen deaktiviert.",
|
||||
"machine_learning_facial_recognition": "Gesichtsidentifikation",
|
||||
"machine_learning_facial_recognition": "Gesichtsidentifizierung",
|
||||
"machine_learning_facial_recognition_description": "Erkenne, identifiziere und gruppiere Gesichter in Bildern",
|
||||
"machine_learning_facial_recognition_model": "Gesichtserkennungs-Modell",
|
||||
"machine_learning_facial_recognition_model_description": "Die Modelle sind in absteigender Reihenfolge ihrer Größe aufgeführt. Größere Modelle sind langsamer und verbrauchen mehr Speicher, liefern aber bessere Ergebnisse. Bitte beachte dabei, dass du die Gesichtserkennungsaufgabe für alle Bilder neu starten musst, wenn du ein Modell änderst.",
|
||||
@@ -347,6 +358,9 @@
|
||||
"trash_number_of_days_description": "Anzahl der Tage, welche die Objekte im Papierkorb verbleiben, bevor sie endgültig entfernt werden",
|
||||
"trash_settings": "Papierkorbeinstellungen",
|
||||
"trash_settings_description": "Papierkorbeinstellungen verwalten",
|
||||
"unlink_all_oauth_accounts": "Aus allen OAuth Konten ausloggen",
|
||||
"unlink_all_oauth_accounts_description": "Denken Sie daran, alle OAuth Konten zu deaktivieren, bevor Sie zu einem neuen Anbieter migrieren.",
|
||||
"unlink_all_oauth_accounts_prompt": "Sind Sie sich sicher, dass Sie alle OAuth Konten deaktivieren möchten? Diese Aktion kann nicht rückgängig gemacht werden und wird außerdem die OAuth ID aller Benutzer zurücksetzen.",
|
||||
"user_cleanup_job": "Benutzer aufräumen",
|
||||
"user_delete_delay": "Das Konto und die Dateien von <b>{user}</b> werden in {delay, plural, one {einem Tag} other {# Tagen}} für eine permanente Löschung geplant.",
|
||||
"user_delete_delay_settings": "Verzögerung für das Löschen von Benutzern",
|
||||
@@ -385,7 +399,7 @@
|
||||
"advanced_settings_self_signed_ssl_subtitle": "Verifizierung von SSL-Zertifikaten vom Server überspringen. Notwendig bei selbstsignierten Zertifikaten.",
|
||||
"advanced_settings_self_signed_ssl_title": "Selbstsignierte SSL-Zertifikate erlauben",
|
||||
"advanced_settings_sync_remote_deletions_subtitle": "Automatisches Löschen oder Wiederherstellen einer Datei auf diesem Gerät, wenn diese Aktion im Web durchgeführt wird",
|
||||
"advanced_settings_sync_remote_deletions_title": "Synchrone Remote-Löschungen [Experimentell]",
|
||||
"advanced_settings_sync_remote_deletions_title": "Mit Server-Löschungen synchronisieren [Experimentell]",
|
||||
"advanced_settings_tile_subtitle": "Erweiterte Benutzereinstellungen",
|
||||
"advanced_settings_troubleshooting_subtitle": "Erweiterte Funktionen zur Fehlersuche aktivieren",
|
||||
"advanced_settings_troubleshooting_title": "Fehlersuche",
|
||||
@@ -397,6 +411,7 @@
|
||||
"album_cover_updated": "Album-Cover aktualisiert",
|
||||
"album_delete_confirmation": "Bist du sicher, dass du das Album {album} löschen willst?",
|
||||
"album_delete_confirmation_description": "Falls dieses Album geteilt wurde, können andere Benutzer nicht mehr darauf zugreifen.",
|
||||
"album_deleted": "Album gelöscht",
|
||||
"album_info_card_backup_album_excluded": "AUSGESCHLOSSEN",
|
||||
"album_info_card_backup_album_included": "EINGESCHLOSSEN",
|
||||
"album_info_updated": "Album-Infos aktualisiert",
|
||||
@@ -480,12 +495,14 @@
|
||||
"asset_skipped_in_trash": "Im Papierkorb",
|
||||
"asset_uploaded": "Hochgeladen",
|
||||
"asset_uploading": "Hochladen…",
|
||||
"asset_viewer_settings_subtitle": "Verwaltung der Einstellungen für den Galerie-Viewer",
|
||||
"asset_viewer_settings_subtitle": "Verwaltung der Einstellungen für die Fotoanzeige",
|
||||
"asset_viewer_settings_title": "Fotoanzeige",
|
||||
"assets": "Dateien",
|
||||
"assets_added_count": "{count, plural, one {# Datei} other {# Dateien}} hinzugefügt",
|
||||
"assets_added_to_album_count": "{count, plural, one {# Datei} other {# Dateien}} zum Album hinzugefügt",
|
||||
"assets_added_to_albums_count": "{assetTotal} Dateien zu {albumTotal} Alben hinzugefügt",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {Datei kann}other {Dateien können}} nicht zum Album hinzugefügt werden",
|
||||
"assets_cannot_be_added_to_albums": "{count, plural, one {Datei kann} other {Dateien können}} nicht zu den Alben hinzugefügt werden",
|
||||
"assets_count": "{count, plural, one {# Datei} other {# Dateien}}",
|
||||
"assets_deleted_permanently": "{count} Element(e) permanent gelöscht",
|
||||
"assets_deleted_permanently_from_server": "{count} Element(e) permanent vom Immich-Server gelöscht",
|
||||
@@ -502,6 +519,7 @@
|
||||
"assets_trashed_count": "{count, plural, one {# Datei} other {# Dateien}} in den Papierkorb verschoben",
|
||||
"assets_trashed_from_server": "{count} Element(e) vom Immich-Server gelöscht",
|
||||
"assets_were_part_of_album_count": "{count, plural, one {# Datei ist} other {# Dateien sind}} bereits im Album vorhanden",
|
||||
"assets_were_part_of_albums_count": "{count, plural, one {Datei war} other {Dateien waren}} bereits in den Alben",
|
||||
"authorized_devices": "Verwendete Geräte",
|
||||
"automatic_endpoint_switching_subtitle": "Verbinden Sie sich lokal über ein bestimmtes WLAN, wenn es verfügbar ist, und verwenden Sie andere Verbindungsmöglichkeiten anderswo",
|
||||
"automatic_endpoint_switching_title": "Automatische URL-Umschaltung",
|
||||
@@ -510,6 +528,7 @@
|
||||
"back_close_deselect": "Zurück, Schließen oder Abwählen",
|
||||
"background_location_permission": "Hintergrund Standortfreigabe",
|
||||
"background_location_permission_content": "Um im Hintergrund zwischen den Netzwerken wechseln zu können, muss Immich *immer* Zugriff auf den genauen Standort haben, damit die App den Namen des WLAN-Netzwerks ermitteln kann",
|
||||
"backup": "Sicherung",
|
||||
"backup_album_selection_page_albums_device": "Alben auf dem Gerät ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Einmalig das Album antippen um es zu sichern, doppelt antippen um es nicht mehr zu sichern",
|
||||
"backup_album_selection_page_assets_scatter": "Elemente (Fotos / Videos) können sich über mehrere Alben verteilen. Daher können diese vor der Sicherung eingeschlossen oder ausgeschlossen werden.",
|
||||
@@ -570,10 +589,12 @@
|
||||
"backup_manual_in_progress": "Sicherung läuft bereits. Bitte versuche es später erneut",
|
||||
"backup_manual_success": "Erfolgreich",
|
||||
"backup_manual_title": "Sicherungsstatus",
|
||||
"backup_options": "Backup-Optionen",
|
||||
"backup_options_page_title": "Sicherungsoptionen",
|
||||
"backup_setting_subtitle": "Verwaltung der Upload-Einstellungen im Hintergrund und im Vordergrund",
|
||||
"backup_settings_subtitle": "Upload-Einstellungen verwalten",
|
||||
"backward": "Rückwärts",
|
||||
"beta_sync": "Status des Beta Sync",
|
||||
"beta_sync": "Status der Beta-Synchronisierung",
|
||||
"beta_sync_subtitle": "Verwalte das neue Synchronisierungssystem",
|
||||
"biometric_auth_enabled": "Biometrische Authentifizierung aktiviert",
|
||||
"biometric_locked_out": "Du bist von der biometrischen Authentifizierung ausgeschlossen",
|
||||
@@ -641,6 +662,7 @@
|
||||
"clear": "Leeren",
|
||||
"clear_all": "Alles leeren",
|
||||
"clear_all_recent_searches": "Alle letzten Suchvorgänge löschen",
|
||||
"clear_file_cache": "Dateien-Cache leeren",
|
||||
"clear_message": "Nachrichten leeren",
|
||||
"clear_value": "Wert leeren",
|
||||
"client_cert_dialog_msg_confirm": "Ok",
|
||||
@@ -711,6 +733,7 @@
|
||||
"create_new_user": "Neuen Nutzer erstellen",
|
||||
"create_shared_album_page_share_add_assets": "INHALTE HINZUFÜGEN",
|
||||
"create_shared_album_page_share_select_photos": "Fotos auswählen",
|
||||
"create_shared_link": "Geteilten Link erstellen",
|
||||
"create_tag": "Tag erstellen",
|
||||
"create_tag_description": "Erstelle einen neuen Tag. Für verschachtelte Tags, gib den gesamten Pfad inklusive Schrägstrich an.",
|
||||
"create_user": "Nutzer erstellen",
|
||||
@@ -723,6 +746,7 @@
|
||||
"current_server_address": "Aktuelle Serveradresse",
|
||||
"custom_locale": "Benutzerdefinierte Sprache",
|
||||
"custom_locale_description": "Datumsangaben und Zahlen je nach Sprache und Land formatieren",
|
||||
"custom_url": "Benutzerdefinierte URL",
|
||||
"daily_title_text_date": "E, dd MMM",
|
||||
"daily_title_text_date_year": "E, dd MMM, yyyy",
|
||||
"dark": "Dunkel",
|
||||
@@ -734,6 +758,7 @@
|
||||
"date_of_birth_saved": "Das Geburtsdatum wurde erfolgreich gespeichert",
|
||||
"date_range": "Datumsbereich",
|
||||
"day": "Tag",
|
||||
"days": "Tage",
|
||||
"deduplicate_all": "Alle Duplikate entfernen",
|
||||
"deduplication_criteria_1": "Bildgröße in Bytes",
|
||||
"deduplication_criteria_2": "Anzahl der EXIF-Daten",
|
||||
@@ -742,7 +767,8 @@
|
||||
"default_locale": "Standard-Sprache",
|
||||
"default_locale_description": "Datumsangaben und Zahlen basierend auf dem Gebietsschema des Browsers formatieren",
|
||||
"delete": "Löschen",
|
||||
"delete_action_prompt": "{count} endgültig gelöscht",
|
||||
"delete_action_confirmation_message": "Bist du sicher, dass du dieses Objekt löschen willst? Diese Aktion wird das Objekt in den Papierkorb des Servers verschieben und fragen, ob du es lokal löschen willst",
|
||||
"delete_action_prompt": "{count} gelöscht",
|
||||
"delete_album": "Album löschen",
|
||||
"delete_api_key_prompt": "Bist du sicher, dass du diesen API-Schlüssel löschen willst?",
|
||||
"delete_dialog_alert": "Diese Elemente werden unwiderruflich von Immich und dem Gerät entfernt",
|
||||
@@ -760,6 +786,8 @@
|
||||
"delete_local_dialog_ok_backed_up_only": "Nur gesicherte Inhalte löschen",
|
||||
"delete_local_dialog_ok_force": "Trotzdem löschen",
|
||||
"delete_others": "Andere löschen",
|
||||
"delete_permanently": "Endgültig löschen",
|
||||
"delete_permanently_action_prompt": "{count} endgültig gelöscht",
|
||||
"delete_shared_link": "geteilten Link löschen",
|
||||
"delete_shared_link_dialog_title": "Geteilten Link löschen",
|
||||
"delete_tag": "Tag löschen",
|
||||
@@ -815,8 +843,12 @@
|
||||
"edit": "Bearbeiten",
|
||||
"edit_album": "Album bearbeiten",
|
||||
"edit_avatar": "Avatar bearbeiten",
|
||||
"edit_birthday": "Geburtsdatum bearbeiten",
|
||||
"edit_date": "Datum bearbeiten",
|
||||
"edit_date_and_time": "Datum und Uhrzeit bearbeiten",
|
||||
"edit_date_and_time_action_prompt": "{count} Daten und Zeiten geändert",
|
||||
"edit_date_and_time_by_offset": "Datum ändern um Versatz",
|
||||
"edit_date_and_time_by_offset_interval": "Neuer Datumsbereich: {from} - {to}",
|
||||
"edit_description": "Beschreibung bearbeiten",
|
||||
"edit_description_prompt": "Bitte wähle eine neue Beschreibung:",
|
||||
"edit_exclusion_pattern": "Ausschlussmuster bearbeiten",
|
||||
@@ -889,6 +921,7 @@
|
||||
"failed_to_load_notifications": "Fehler beim Laden der Benachrichtigungen",
|
||||
"failed_to_load_people": "Fehler beim Laden von Personen",
|
||||
"failed_to_remove_product_key": "Fehler beim Entfernen des Produktschlüssels",
|
||||
"failed_to_reset_pin_code": "Zurücksetzen des PIN Codes fehlgeschlagen",
|
||||
"failed_to_stack_assets": "Dateien konnten nicht gestapelt werden",
|
||||
"failed_to_unstack_assets": "Dateien konnten nicht entstapelt werden",
|
||||
"failed_to_update_notification_status": "Benachrichtigungsstatus aktualisieren fehlgeschlagen",
|
||||
@@ -897,6 +930,7 @@
|
||||
"paths_validation_failed": "{paths, plural, one {# Pfad konnte} other {# Pfade konnten}} nicht validiert werden",
|
||||
"profile_picture_transparent_pixels": "Profilbilder dürfen keine transparenten Pixel haben. Bitte zoome heran und/oder verschiebe das Bild.",
|
||||
"quota_higher_than_disk_size": "Dein festgelegtes Kontingent ist größer als der verfügbare Speicher",
|
||||
"something_went_wrong": "Ein Fehler ist eingetreten",
|
||||
"unable_to_add_album_users": "Benutzer konnten nicht zum Album hinzugefügt werden",
|
||||
"unable_to_add_assets_to_shared_link": "Datei konnte nicht zum geteilten Link hinzugefügt werden",
|
||||
"unable_to_add_comment": "Es kann kein Kommentar hinzufügt werden",
|
||||
@@ -982,13 +1016,11 @@
|
||||
},
|
||||
"exif": "EXIF",
|
||||
"exif_bottom_sheet_description": "Beschreibung hinzufügen...",
|
||||
"exif_bottom_sheet_description_error": "Fehler bei der Aktualisierung der Beschreibung",
|
||||
"exif_bottom_sheet_details": "DETAILS",
|
||||
"exif_bottom_sheet_location": "STANDORT",
|
||||
"exif_bottom_sheet_people": "PERSONEN",
|
||||
"exif_bottom_sheet_person_add_person": "Namen hinzufügen",
|
||||
"exif_bottom_sheet_person_age_months": "{months} Monate alt",
|
||||
"exif_bottom_sheet_person_age_year_months": "1 Jahr, {months} Monate alt",
|
||||
"exif_bottom_sheet_person_age_years": "Alter {years}",
|
||||
"exit_slideshow": "Diashow beenden",
|
||||
"expand_all": "Alle aufklappen",
|
||||
"experimental_settings_new_asset_list_subtitle": "In Arbeit",
|
||||
@@ -1002,6 +1034,8 @@
|
||||
"explorer": "Datei-Explorer",
|
||||
"export": "Exportieren",
|
||||
"export_as_json": "Als JSON exportieren",
|
||||
"export_database": "Datenbank exportieren",
|
||||
"export_database_description": "Exportiert die SQLite Datenbank",
|
||||
"extension": "Erweiterung",
|
||||
"external": "Extern",
|
||||
"external_libraries": "Externe Bibliotheken",
|
||||
@@ -1028,11 +1062,13 @@
|
||||
"filter_people": "Personen filtern",
|
||||
"filter_places": "Orte filtern",
|
||||
"find_them_fast": "Finde sie schneller mit der Suche nach Namen",
|
||||
"first": "Erste",
|
||||
"fix_incorrect_match": "Fehlerhafte Übereinstimmung beheben",
|
||||
"folder": "Ordner",
|
||||
"folder_not_found": "Ordner nicht gefunden",
|
||||
"folders": "Ordner",
|
||||
"folders_feature_description": "Durchsuchen der Ordneransicht für Fotos und Videos im Dateisystem",
|
||||
"forgot_pin_code_question": "PIN Code vergessen?",
|
||||
"forward": "Vorwärts",
|
||||
"gcast_enabled": "Google Cast",
|
||||
"gcast_enabled_description": "Diese Funktion lädt externe Quellen von Google, um zu funktionieren.",
|
||||
@@ -1077,16 +1113,17 @@
|
||||
"home_page_archive_err_partner": "Inhalte von Partnern können nicht archiviert werden",
|
||||
"home_page_building_timeline": "Zeitachse wird erstellt",
|
||||
"home_page_delete_err_partner": "Inhalte von Partnern können nicht gelöscht werden, überspringe",
|
||||
"home_page_delete_remote_err_local": "Lokale Inhalte in der Auswahl, überspringen",
|
||||
"home_page_delete_remote_err_local": "Lokale Elemente in der Auswahl zum Entfernen von Remote-Elementen, Überspringe",
|
||||
"home_page_favorite_err_local": "Kann lokale Elemente noch nicht favorisieren, überspringen",
|
||||
"home_page_favorite_err_partner": "Inhalte von Partnern können nicht favorisiert werden, überspringe",
|
||||
"home_page_first_time_notice": "Wenn dies das erste Mal ist dass Du Immich nutzt, stelle bitte sicher, dass mindestens ein Album zur Sicherung ausgewählt ist, sodass die Zeitachse mit Fotos und Videos gefüllt werden kann",
|
||||
"home_page_first_time_notice": "Wenn Sie die App zum ersten Mal verwenden, wählen Sie bitte ein Album zur Sicherung aus, damit die Zeitachse mit Fotos und Videos gefüllt werden kann",
|
||||
"home_page_locked_error_local": "Lokale Dateien können nicht in den gesperrten Ordner verschoben werden, überspringe",
|
||||
"home_page_locked_error_partner": "Dateien von Partnern können nicht in den gesperrten Ordner verschoben werden, überspringe",
|
||||
"home_page_share_err_local": "Lokale Inhalte können nicht per Link geteilt werden, überspringe",
|
||||
"home_page_upload_err_limit": "Es können max. 30 Elemente gleichzeitig hochgeladen werden, überspringen",
|
||||
"host": "Host",
|
||||
"hour": "Stunde",
|
||||
"hours": "Stunden",
|
||||
"id": "ID",
|
||||
"idle": "Untätig",
|
||||
"ignore_icloud_photos": "iCloud Fotos ignorieren",
|
||||
@@ -1146,10 +1183,12 @@
|
||||
"language_no_results_title": "Keine Sprachen gefunden",
|
||||
"language_search_hint": "Sprachen durchsuchen...",
|
||||
"language_setting_description": "Wähle deine bevorzugte Sprache",
|
||||
"large_files": "Große Dateien",
|
||||
"last_seen": "Zuletzt gesehen",
|
||||
"latest_version": "Aktuellste Version",
|
||||
"latitude": "Breitengrad",
|
||||
"leave": "Verlassen",
|
||||
"leave_album": "Album verlassen",
|
||||
"lens_model": "Objektivmodell",
|
||||
"let_others_respond": "Antworten zulassen",
|
||||
"level": "Level",
|
||||
@@ -1163,9 +1202,9 @@
|
||||
"library_page_sort_title": "Titel des Albums",
|
||||
"licenses": "Lizenzen",
|
||||
"light": "Hell",
|
||||
"like": "Gefällt mir",
|
||||
"like_deleted": "Like gelöscht",
|
||||
"link_motion_video": "Bewegungsvideo verknüpfen",
|
||||
"link_options": "Link-Optionen",
|
||||
"link_to_oauth": "Mit OAuth verknüpfen",
|
||||
"linked_oauth_account": "Verknüpftes OAuth-Konto",
|
||||
"list": "Liste",
|
||||
@@ -1230,8 +1269,7 @@
|
||||
"manage_your_devices": "Deine eingeloggten Geräte verwalten",
|
||||
"manage_your_oauth_connection": "Deine OAuth-Verknüpfung verwalten",
|
||||
"map": "Karte",
|
||||
"map_assets_in_bound": "{count} Foto",
|
||||
"map_assets_in_bounds": "{count} Fotos",
|
||||
"map_assets_in_bounds": "{count, plural, =0 {Keine Fotos in diesem Gebiet} one {# Foto} other {# Fotos}}",
|
||||
"map_cannot_get_user_location": "Standort konnte nicht ermittelt werden",
|
||||
"map_location_dialog_yes": "Ja",
|
||||
"map_location_picker_page_use_location": "Aufnahmeort verwenden",
|
||||
@@ -1239,7 +1277,6 @@
|
||||
"map_location_service_disabled_title": "Ortungsdienste deaktiviert",
|
||||
"map_marker_for_images": "Kartenmarkierung für Bilder, die in {city}, {country} aufgenommen wurden",
|
||||
"map_marker_with_image": "Kartenmarkierung mit Bild",
|
||||
"map_no_assets_in_bounds": "Keine Fotos in dieser Gegend",
|
||||
"map_no_location_permission_content": "Ortungsdienste müssen aktiviert sein, um Inhalte am aktuellen Standort anzuzeigen. Willst du die Ortungsdienste jetzt aktivieren?",
|
||||
"map_no_location_permission_title": "Kein Zugriff auf den Standort",
|
||||
"map_settings": "Karteneinstellungen",
|
||||
@@ -1252,7 +1289,7 @@
|
||||
"map_settings_include_show_archived": "Archivierte anzeigen",
|
||||
"map_settings_include_show_partners": "Partner einbeziehen",
|
||||
"map_settings_only_show_favorites": "Nur Favoriten anzeigen",
|
||||
"map_settings_theme_settings": "Karten Design",
|
||||
"map_settings_theme_settings": "Kartendesign",
|
||||
"map_zoom_to_see_photos": "Ansicht verkleinern um Fotos zu sehen",
|
||||
"mark_all_as_read": "Alle als gelesen markieren",
|
||||
"mark_as_read": "Als gelesen markieren",
|
||||
@@ -1276,6 +1313,7 @@
|
||||
"merged_people_count": "{count, plural, one {# Person} other {# Personen}} zusammengefügt",
|
||||
"minimize": "Minimieren",
|
||||
"minute": "Minute",
|
||||
"minutes": "Minuten",
|
||||
"missing": "Fehlende",
|
||||
"model": "Modell",
|
||||
"month": "Monat",
|
||||
@@ -1295,6 +1333,9 @@
|
||||
"my_albums": "Meine Alben",
|
||||
"name": "Name",
|
||||
"name_or_nickname": "Name oder Nickname",
|
||||
"network_requirement_photos_upload": "Mobiles Datennetz verwenden, um Fotos zu sichern",
|
||||
"network_requirement_videos_upload": "Mobiles Datennetz verwenden, um Videos zu sichern",
|
||||
"network_requirements_updated": "Netzwerk-Abhängigkeiten haben sich geändert, Backup-Warteschlange wird zurückgesetzt",
|
||||
"networking_settings": "Netzwerk",
|
||||
"networking_subtitle": "Verwaltung von Server-Endpunkt-Einstellungen",
|
||||
"never": "Niemals",
|
||||
@@ -1346,6 +1387,7 @@
|
||||
"oauth": "OAuth",
|
||||
"official_immich_resources": "Offizielle Immich Quellen",
|
||||
"offline": "Offline",
|
||||
"offset": "Verschiebung",
|
||||
"ok": "Ok",
|
||||
"oldest_first": "Älteste zuerst",
|
||||
"on_this_device": "Auf diesem Gerät",
|
||||
@@ -1423,6 +1465,9 @@
|
||||
"permission_onboarding_permission_limited": "Berechtigungen unzureichend. Um Immich das Sichern von ganzen Sammlungen zu ermöglichen, muss der Zugriff auf alle Fotos und Videos in den Einstellungen erlaubt werden.",
|
||||
"permission_onboarding_request": "Immich benötigt Berechtigung um auf deine Fotos und Videos zuzugreifen.",
|
||||
"person": "Person",
|
||||
"person_age_months": "{months, plural, one {# month} other {# months}} alt",
|
||||
"person_age_year_months": "1 Jahr, {months, plural, one {# month} other {# months}} alt",
|
||||
"person_age_years": "{years, plural, other {# years}} alt",
|
||||
"person_birthdate": "Geboren am {date}",
|
||||
"person_hidden": "{name}{hidden, select, true { (verborgen)} other {}}",
|
||||
"photo_shared_all_users": "Es sieht so aus, als hättest du deine Fotos mit allen Benutzern geteilt oder du hast keine Benutzer, mit denen du teilen kannst.",
|
||||
@@ -1529,8 +1574,8 @@
|
||||
"refreshing_faces": "Gesichter werden aktualisiert",
|
||||
"refreshing_metadata": "Metadaten werden aktualisiert",
|
||||
"regenerating_thumbnails": "Miniaturansichten werden neu erstellt",
|
||||
"remote": "Entfernt",
|
||||
"remote_assets": "Entfernte Dateien",
|
||||
"remote": "Server",
|
||||
"remote_assets": "Server-Dateien",
|
||||
"remove": "Entfernen",
|
||||
"remove_assets_album_confirmation": "Bist du sicher, dass du {count, plural, one {# Datei} other {# Dateien}} aus dem Album entfernen willst?",
|
||||
"remove_assets_shared_link_confirmation": "Bist du sicher, dass du {count, plural, one {# Datei} other {# Dateien}} von diesem geteilten Link entfernen willst?",
|
||||
@@ -1568,6 +1613,9 @@
|
||||
"reset_password": "Passwort zurücksetzen",
|
||||
"reset_people_visibility": "Sichtbarkeit von Personen zurücksetzen",
|
||||
"reset_pin_code": "PIN Code zurücksetzen",
|
||||
"reset_pin_code_description": "Falls du deinen PIN Code vergessen hast, wende dich an deinen Immich-Administrator um ihn zurücksetzen zu lassen",
|
||||
"reset_pin_code_success": "PIN Code erfolgreich zurückgesetzt",
|
||||
"reset_pin_code_with_password": "Mit deinem Passwort kannst du jederzeit deinen PIN Code zurücksetzen",
|
||||
"reset_sqlite": "SQLite Datenbank zurücksetzen",
|
||||
"reset_sqlite_confirmation": "Bist du sicher, dass du die SQLite-Datenbank zurücksetzen willst? Du musst dich ab- und wieder anmelden, um die Daten neu zu synchronisieren",
|
||||
"reset_sqlite_success": "SQLite Datenbank erfolgreich zurückgesetzt",
|
||||
@@ -1582,6 +1630,7 @@
|
||||
"resume": "Fortsetzen",
|
||||
"retry_upload": "Upload wiederholen",
|
||||
"review_duplicates": "Duplikate überprüfen",
|
||||
"review_large_files": "Große Dateien überprüfen",
|
||||
"role": "Rolle",
|
||||
"role_editor": "Bearbeiter",
|
||||
"role_viewer": "Betrachter",
|
||||
@@ -1709,7 +1758,7 @@
|
||||
"setting_notifications_subtitle": "Benachrichtigungen anpassen",
|
||||
"setting_notifications_total_progress_subtitle": "Gesamter Upload-Fortschritt (abgeschlossen/Anzahl Elemente)",
|
||||
"setting_notifications_total_progress_title": "Zeige den Gesamtfortschritt der Hintergrundsicherung",
|
||||
"setting_video_viewer_looping_title": "Schleife / Looping",
|
||||
"setting_video_viewer_looping_title": "Video-Wiederholung",
|
||||
"setting_video_viewer_original_video_subtitle": "Beim Streaming eines Videos vom Server wird das Original abgespielt, auch wenn eine Transkodierung verfügbar ist. Kann zu Pufferung führen. Lokal verfügbare Videos werden unabhängig von dieser Einstellung in Originalqualität wiedergegeben.",
|
||||
"setting_video_viewer_original_video_title": "Originalvideo erzwingen",
|
||||
"settings": "Einstellungen",
|
||||
@@ -1727,7 +1776,7 @@
|
||||
"shared_album_activity_remove_content": "Möchtest du diese Aktivität entfernen?",
|
||||
"shared_album_activity_remove_title": "Aktivität entfernen",
|
||||
"shared_album_section_people_action_error": "Fehler beim Verlassen oder Entfernen aus dem Album",
|
||||
"shared_album_section_people_action_leave": "Album verlassen",
|
||||
"shared_album_section_people_action_leave": "Benutzer vom Album entfernen",
|
||||
"shared_album_section_people_action_remove_user": "Benutzer von Album entfernen",
|
||||
"shared_album_section_people_title": "PERSONEN",
|
||||
"shared_by": "Geteilt von",
|
||||
@@ -1739,6 +1788,7 @@
|
||||
"shared_link_clipboard_copied_massage": "Link kopiert",
|
||||
"shared_link_clipboard_text": "Link: {link}\nPasswort: {password}",
|
||||
"shared_link_create_error": "Fehler beim Erstellen der Linkfreigabe",
|
||||
"shared_link_custom_url_description": "Greife über eine benutzerdefinierte URL auf diesen Freigabelink zu",
|
||||
"shared_link_edit_description_hint": "Beschreibung eingeben",
|
||||
"shared_link_edit_expire_after_option_day": "1 Tag",
|
||||
"shared_link_edit_expire_after_option_days": "{count} Tagen",
|
||||
@@ -1764,6 +1814,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "Geteilte Links verwalten",
|
||||
"shared_link_options": "Optionen für geteilten Link",
|
||||
"shared_link_password_description": "Für den Zugriff auf diesen freigegebenen Link ist ein Passwort erforderlich",
|
||||
"shared_links": "Geteilte Links",
|
||||
"shared_links_description": "Teile Fotos und Videos mit einem Link",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, one {# geteiltes Foto oder Video.} other {# geteilte Fotos & Videos.}}",
|
||||
@@ -1813,6 +1864,7 @@
|
||||
"sort_created": "Erstellungsdatum",
|
||||
"sort_items": "Anzahl der Einträge",
|
||||
"sort_modified": "Änderungsdatum",
|
||||
"sort_newest": "Neuestes Foto",
|
||||
"sort_oldest": "Ältestes Foto",
|
||||
"sort_people_by_similarity": "Personen nach Ähnlichkeit sortieren",
|
||||
"sort_recent": "Neustes Foto",
|
||||
@@ -1850,7 +1902,7 @@
|
||||
"sync_albums": "Alben synchronisieren",
|
||||
"sync_albums_manual_subtitle": "Synchronisiere alle hochgeladenen Videos und Fotos in die ausgewählten Backup-Alben",
|
||||
"sync_local": "Lokal synchronisieren",
|
||||
"sync_remote": "Entfernt synchronisieren",
|
||||
"sync_remote": "mit Server synchronisieren",
|
||||
"sync_upload_album_setting_subtitle": "Erstelle deine ausgewählten Alben in Immich und lade die Fotos und Videos dort hoch",
|
||||
"tag": "Tag",
|
||||
"tag_assets": "Dateien taggen",
|
||||
@@ -1861,12 +1913,12 @@
|
||||
"tag_updated": "Tag aktualisiert: {tag}",
|
||||
"tagged_assets": "{count, plural, one {# Datei} other {# Dateien}} getagged",
|
||||
"tags": "Tags",
|
||||
"tap_to_run_job": "Tippen um den Job zu starten",
|
||||
"tap_to_run_job": "Tippen, um den Job zu starten",
|
||||
"template": "Vorlage",
|
||||
"theme": "Theme",
|
||||
"theme_selection": "Themenauswahl",
|
||||
"theme_selection_description": "Automatische Einstellung des Themes auf Hell oder Dunkel, je nach Systemeinstellung des Browsers",
|
||||
"theme_setting_asset_list_storage_indicator_title": "Forschrittsbalken der Sicherung auf dem Vorschaubild",
|
||||
"theme_setting_asset_list_storage_indicator_title": "Fortschrittsbalken der Sicherung auf dem Vorschaubild",
|
||||
"theme_setting_asset_list_tiles_per_row_title": "Anzahl der Elemente pro Reihe ({count})",
|
||||
"theme_setting_colorful_interface_subtitle": "Primärfarbe auf App-Hintergrund anwenden.",
|
||||
"theme_setting_colorful_interface_title": "Farbige UI-Oberfläche",
|
||||
@@ -1941,11 +1993,13 @@
|
||||
"updated_at": "Aktualisiert",
|
||||
"updated_password": "Passwort aktualisiert",
|
||||
"upload": "Hochladen",
|
||||
"upload_action_prompt": "{count} in der Warteschlange für Upload",
|
||||
"upload_concurrency": "Parallelität beim Hochladen",
|
||||
"upload_details": "Upload Details",
|
||||
"upload_dialog_info": "Willst du die ausgewählten Elemente auf dem Server sichern?",
|
||||
"upload_dialog_title": "Element hochladen",
|
||||
"upload_errors": "Hochladen mit {count, plural, one {# Fehler} other {# Fehlern}} abgeschlossen, aktualisiere die Seite, um neu hochgeladene Dateien zu sehen.",
|
||||
"upload_finished": "Upload fertig",
|
||||
"upload_progress": "{remaining, number} verbleibend - {processed, number}/{total, number} verarbeitet",
|
||||
"upload_skipped_duplicates": "{count, plural, one {# doppelte Datei} other {# doppelte Dateien}} ausgelassen",
|
||||
"upload_status_duplicates": "Duplikate",
|
||||
@@ -1954,6 +2008,7 @@
|
||||
"upload_success": "Hochladen erfolgreich. Aktualisiere die Seite, um neue hochgeladene Dateien zu sehen.",
|
||||
"upload_to_immich": "Auf Immich hochladen ({count})",
|
||||
"uploading": "Wird hochgeladen",
|
||||
"uploading_media": "Medien werden hochgeladen",
|
||||
"url": "URL",
|
||||
"usage": "Verwendung",
|
||||
"use_biometric": "Biometrie verwenden",
|
||||
|
||||
140
i18n/el.json
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "Προσθήκη μίας τοποθεσίας",
|
||||
"add_a_name": "Προσθέστε ένα όνομα",
|
||||
"add_a_title": "Προσθήκη τίτλου",
|
||||
"add_birthday": "Προσθέστε την ημερομηνία γενεθλίων",
|
||||
"add_endpoint": "Προσθήκη τελικού σημείου",
|
||||
"add_exclusion_pattern": "Προσθήκη μοτίβου αποκλεισμού",
|
||||
"add_import_path": "Προσθήκη μονοπατιού εισαγωγής",
|
||||
@@ -27,6 +28,9 @@
|
||||
"add_to_album": "Προσθήκη σε άλμπουμ",
|
||||
"add_to_album_bottom_sheet_added": "Προστέθηκε στο {album}",
|
||||
"add_to_album_bottom_sheet_already_exists": "Ήδη στο {album}",
|
||||
"add_to_album_toggle": "Εναλλαγή επιλογής για το {album}",
|
||||
"add_to_albums": "Προσθήκη στα άλμπουμ",
|
||||
"add_to_albums_count": "Προσθήκη στα άλμπουμ ({count})",
|
||||
"add_to_shared_album": "Προσθήκη σε κοινόχρηστο άλμπουμ",
|
||||
"add_url": "Προσθήκη Συνδέσμου",
|
||||
"added_to_archive": "Προστέθηκε στο αρχείο",
|
||||
@@ -44,6 +48,13 @@
|
||||
"backup_database": "Δημιουργία Dump βάσης δεδομένων",
|
||||
"backup_database_enable_description": "Ενεργοποίηση dumps βάσης δεδομένων",
|
||||
"backup_keep_last_amount": "Ποσότητα προηγούμενων dumps που πρέπει να διατηρηθούν",
|
||||
"backup_onboarding_1_description": "αντίγραφο ασφαλείας εκτός εγκατάστασης, είτε στο cloud είτε σε άλλη φυσική τοποθεσία.",
|
||||
"backup_onboarding_2_description": "τοπικά αντίγραφα σε διαφορετικές συσκευές. Αυτό περιλαμβάνει τα κύρια αρχεία και ένα τοπικό αντίγραφο ασφαλείας αυτών των αρχείων.",
|
||||
"backup_onboarding_3_description": "συνολικά αντίγραφα των δεδομένων σας, συμπεριλαμβανομένων των αρχικών αρχείων. Αυτό περιλαμβάνει 1 αντίγραφο εκτός εγκατάστασης (offsite) και 2 τοπικά αντίγραφα.",
|
||||
"backup_onboarding_description": "Συνιστάται η στρατηγική <backblaze-link>αντιγράφων ασφαλείας 3-2-1</backblaze-link> για την προστασία των δεδομένων σας. Θα πρέπει να διατηρείτε αντίγραφα των ανεβασμένων φωτογραφιών/βίντεό σας, καθώς και της βάσης δεδομένων του Immich, για μια ολοκληρωμένη λύση backup.",
|
||||
"backup_onboarding_footer": "Για περισσότερες πληροφορίες σχετικά με τη δημιουργία αντιγράφων ασφαλείας του Immich, ανατρέξε στον <link>οδηγό τεκμηρίωσης</link>.",
|
||||
"backup_onboarding_parts_title": "Ένα αντίγραφο ασφαλείας τύπου 3-2-1 περιλαμβάνει:",
|
||||
"backup_onboarding_title": "Αντίγραφα ασφαλείας",
|
||||
"backup_settings": "Ρυθμίσεις dump βάσης δεδομένων",
|
||||
"backup_settings_description": "Διαχείριση ρυθμίσεων dump της βάσης δεδομένων.",
|
||||
"cleared_jobs": "Εκκαθαρίστηκαν οι εργασίες για: {job}",
|
||||
@@ -166,6 +177,20 @@
|
||||
"metadata_settings_description": "Διαχείρηση ρυθμίσεων μεταδεδομένων",
|
||||
"migration_job": "Μεταφορά δεδομένων (Migration)",
|
||||
"migration_job_description": "Μεταφορά των εικονιδίων για αρχεία και πρόσωπα στην πιο πρόσφατη δομή αρχείων",
|
||||
"nightly_tasks_cluster_faces_setting_description": "Εκτέλεση αναγνώρισης προσώπου σε νέα ανιχνευμένα πρόσωπα",
|
||||
"nightly_tasks_cluster_new_faces_setting": "Ομαδοποίηση νέων προσώπων",
|
||||
"nightly_tasks_database_cleanup_setting": "Εργασίες καθαρισμού βάσης δεδομένων",
|
||||
"nightly_tasks_database_cleanup_setting_description": "Εκκαθάριση παλιών και ληγμένων δεδομένων από τη βάση δεδομένων",
|
||||
"nightly_tasks_generate_memories_setting": "Δημιουργία αναμνήσεων",
|
||||
"nightly_tasks_generate_memories_setting_description": "Δημιουργία νέων αναμνήσεων από αντικείμενα",
|
||||
"nightly_tasks_missing_thumbnails_setting": "Δημιουργία ελλειπόντων μικρογραφιών",
|
||||
"nightly_tasks_missing_thumbnails_setting_description": "Τοποθέτηση στη ουρά των αρχείων χωρίς μικρογραφίες για δημιουργία μικρογραφιών",
|
||||
"nightly_tasks_settings": "Ρυθμίσεις για τις νυχτερινές εργασίες",
|
||||
"nightly_tasks_settings_description": "Διαχείριση νυχτερινών εργασιών",
|
||||
"nightly_tasks_start_time_setting": "Ώρα έναρξης",
|
||||
"nightly_tasks_start_time_setting_description": "Η ώρα κατά την οποία ο διακομιστής ξεκινάει να εκτελεί τις νυχτερινές εργασίες",
|
||||
"nightly_tasks_sync_quota_usage_setting": "Συγχρονισμός χρήσης χώρου",
|
||||
"nightly_tasks_sync_quota_usage_setting_description": "Ενημέρωση του διαθέσιμου χώρου χρήστη, με βάση την τρέχουσα χρήση",
|
||||
"no_paths_added": "Δεν προστέθηκαν διαδρομές",
|
||||
"no_pattern_added": "Δεν προστέθηκε μοτίβο",
|
||||
"note_apply_storage_label_previous_assets": "Σημείωση: Για να εφαρμοστεί η Ετικέτα Αποθήκευσης σε στοιχεία που είχαν αναρτηθεί παλαιότερα, εκτέλεσε το",
|
||||
@@ -196,6 +221,8 @@
|
||||
"oauth_mobile_redirect_uri": "URI Ανακατεύθυνσης για κινητά τηλέφωνα",
|
||||
"oauth_mobile_redirect_uri_override": "Προσπέλαση URI ανακατεύθυνσης για κινητά τηλέφωνα",
|
||||
"oauth_mobile_redirect_uri_override_description": "Ενεργοποιήστε το όταν ο πάροχος OAuth δεν επιτρέπει μια URI για κινητά, όπως το ''{callback}''",
|
||||
"oauth_role_claim": "Ανάθεση ρόλου",
|
||||
"oauth_role_claim_description": "Αυτόματη παραχώρηση πρόσβασης διαχειριστή με βάση την ύπαρξη αυτής της ανάθεσης. Η ανάθεση μπορεί να είναι είτε 'χρήστης' είτε 'διαχειριστής'.",
|
||||
"oauth_settings": "OAuth",
|
||||
"oauth_settings_description": "Διαχείριση ρυθμίσεων σύνδεσης OAuth",
|
||||
"oauth_settings_more_details": "Για περισσότερες λεπτομέρειες σχετικά με αυτήν τη δυνατότητα, ανατρέξτε στην <link>τεκμηρίωση</link>.",
|
||||
@@ -331,6 +358,9 @@
|
||||
"trash_number_of_days_description": "Αριθμός ημερών παραμονής των αρχείων στον κάδο, πριν από την οριστική διαγραφή τους",
|
||||
"trash_settings": "Ρυθμίσεις Κάδου Απορριμμάτων",
|
||||
"trash_settings_description": "Διαχείριση ρυθίσεων κάδου απορριμμάτων",
|
||||
"unlink_all_oauth_accounts": "Αποσύνδεση όλων των λογαριασμών OAuth",
|
||||
"unlink_all_oauth_accounts_description": "Μην ξεχάσετε να αποσυνδέσετε όλους τους λογαριασμούς OAuth πριν μεταβείτε σε νέο πάροχο.",
|
||||
"unlink_all_oauth_accounts_prompt": "Είστε σίγουροι ότι θέλετε να αποσυνδέσετε όλους τους λογαριασμούς OAuth; Αυτό θα επαναφέρει το OAuth ID για κάθε χρήστη και δεν μπορεί να αναιρεθεί.",
|
||||
"user_cleanup_job": "Εκκαθάριση χρηστών",
|
||||
"user_delete_delay": "Ο λογαριασμός και τα αρχεία του/της <b>{user}</b> θα προγραμματιστούν για οριστική διαγραφή σε {delay, plural, one {# ημέρα} other {# ημέρες}}.",
|
||||
"user_delete_delay_settings": "Καθυστέρηση διαγραφής",
|
||||
@@ -357,10 +387,12 @@
|
||||
"admin_password": "Κωδικός πρόσβασης Διαχειριστή",
|
||||
"administration": "Διαχείριση",
|
||||
"advanced": "Για προχωρημένους",
|
||||
"advanced_settings_beta_timeline_subtitle": "Δοκίμασε τη νέα εμπειρία της εφαρμογής",
|
||||
"advanced_settings_beta_timeline_title": "Δοκιμαστικό χρονολόγιο",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "Χρησιμοποιήστε αυτήν την επιλογή για να φιλτράρετε τα μέσα ενημέρωσης κατά τον συγχρονισμό με βάση εναλλακτικά κριτήρια. Δοκιμάστε αυτή τη δυνατότητα μόνο αν έχετε προβλήματα με την εφαρμογή που εντοπίζει όλα τα άλμπουμ.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[ΠΕΙΡΑΜΑΤΙΚΟ] Χρήση εναλλακτικού φίλτρου συγχρονισμού άλμπουμ συσκευής",
|
||||
"advanced_settings_log_level_title": "Επίπεδο σύνδεσης: {level}",
|
||||
"advanced_settings_prefer_remote_subtitle": "Μερικές συσκευές αργούν πολύ να φορτώσουν μικρογραφίες από αρχεία στη συσκευή. Ενεργοποιήστε αυτήν τη ρύθμιση για να φορτώνονται αντί αυτού απομακρυσμένες εικόνες.",
|
||||
"advanced_settings_prefer_remote_subtitle": "Μερικές συσκευές αργούν πολύ να φορτώσουν μικρογραφίες από τοπικά αρχεία. Ενεργοποιήστε αυτήν τη ρύθμιση για να φορτώνονται αντί αυτού απομακρυσμένες εικόνες.",
|
||||
"advanced_settings_prefer_remote_title": "Προτίμηση απομακρυσμένων εικόνων",
|
||||
"advanced_settings_proxy_headers_subtitle": "Καθορισμός κεφαλίδων διακομιστή μεσολάβησης που το Immich πρέπει να στέλνει με κάθε αίτημα δικτύου",
|
||||
"advanced_settings_proxy_headers_title": "Κεφαλίδες διακομιστή μεσολάβησης",
|
||||
@@ -379,6 +411,7 @@
|
||||
"album_cover_updated": "Το εξώφυλλο του άλμπουμ, ενημερώθηκε",
|
||||
"album_delete_confirmation": "Είστε σίγουροι ότι θέλετε να διαγράψετε το άλμπουμ {album};",
|
||||
"album_delete_confirmation_description": "Εάν αυτό το άλμπουμ είναι κοινόχρηστο, οι άλλοι χρήστες δεν θα μπορούν να έχουν πρόσβαση.",
|
||||
"album_deleted": "Το άλμπουμ διαγράφηκε",
|
||||
"album_info_card_backup_album_excluded": "ΕΞΑΙΡΟΥΜΕΝΟ",
|
||||
"album_info_card_backup_album_included": "ΣΥΜΠΕΡΙΛΑΜΒΑΝΟΜΕΝΟ",
|
||||
"album_info_updated": "Οι πληροφορίες του άλμπουμ, ενημερώθηκαν",
|
||||
@@ -388,6 +421,7 @@
|
||||
"album_options": "Επιλογές άλμπουμ",
|
||||
"album_remove_user": "Διαγραφή χρήστη;",
|
||||
"album_remove_user_confirmation": "Είστε σίγουροι ότι θέλετε να αφαιρέσετε τον/την {user};",
|
||||
"album_search_not_found": "Δε βρέθηκαν άλμπουμ που να ταιριάζουν με την αναζήτησή σας",
|
||||
"album_share_no_users": "Φαίνεται ότι έχετε κοινοποιήσει αυτό το άλμπουμ σε όλους τους χρήστες ή δεν έχετε χρήστες για να το κοινοποιήσετε.",
|
||||
"album_updated": "Το άλμπουμ, ενημερώθηκε",
|
||||
"album_updated_setting_description": "Λάβετε ειδοποίηση μέσω email όταν ένα κοινόχρηστο άλμπουμ έχει νέα αρχεία",
|
||||
@@ -407,6 +441,7 @@
|
||||
"albums_default_sort_order": "Προεπιλεγμένη ταξινόμηση άλμπουμ",
|
||||
"albums_default_sort_order_description": "Αρχική ταξινόμηση κατά τη δημιουργία νέων άλμπουμ.",
|
||||
"albums_feature_description": "Συλλογές στοιχείων που μπορούν να κοινοποιηθούν σε άλλους χρήστες.",
|
||||
"albums_on_device_count": "Άλμπουμ στη συσκευή ({count})",
|
||||
"all": "Όλα",
|
||||
"all_albums": "Όλα τα άλμπουμ",
|
||||
"all_people": "Όλα τα άτομα",
|
||||
@@ -427,6 +462,7 @@
|
||||
"app_settings": "Ρυθμίσεις εφαρμογής",
|
||||
"appears_in": "Εμφανίζεται σε",
|
||||
"archive": "Αρχείο",
|
||||
"archive_action_prompt": "Προστέθηκαν {count} στο Αρχείο",
|
||||
"archive_or_unarchive_photo": "Αρχειοθέτηση ή αποαρχειοθέτηση φωτογραφίας",
|
||||
"archive_page_no_archived_assets": "Δε βρέθηκαν αρχειοθετημένα στοιχεία",
|
||||
"archive_page_title": "Αρχείο ({count})",
|
||||
@@ -464,7 +500,9 @@
|
||||
"assets": "Αντικείμενα",
|
||||
"assets_added_count": "Προστέθηκε {count, plural, one {# αρχείο} other {# αρχεία}}",
|
||||
"assets_added_to_album_count": "Προστέθηκε {count, plural, one {# αρχείο} other {# αρχεία}} στο άλμπουμ",
|
||||
"assets_added_to_albums_count": "Προστέθηκε {assetTotal, plural, one {# στοιχείο} other {# στοιχεία}} στα {albumTotal} άλμπουμ",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {Στοιχείο} other {Στοιχεία}} δεν μπορούν να προστεθούν στο άλμπουμ",
|
||||
"assets_cannot_be_added_to_albums": "Δεν μπορεί να προστεθεί κανένα {count, plural, one {στοιχείο} other {στοιχεία}} σε κανένα από τα άλμπουμ",
|
||||
"assets_count": "{count, plural, one {# αρχείο} other {# αρχεία}}",
|
||||
"assets_deleted_permanently": "{count} τα στοιχεία διαγράφηκαν οριστικά",
|
||||
"assets_deleted_permanently_from_server": "{count} στοιχεία διαγράφηκαν οριστικά από το διακομιστή Immich",
|
||||
@@ -481,6 +519,7 @@
|
||||
"assets_trashed_count": "Μετακιν. στον κάδο απορριμάτων {count, plural, one {# στοιχείο} other {# στοιχεία}}",
|
||||
"assets_trashed_from_server": "{count} στοιχεία μεταφέρθηκαν στον κάδο απορριμμάτων από το διακομιστή Immich",
|
||||
"assets_were_part_of_album_count": "{count, plural, one {Το στοιχείο ανήκει} other {Τα στοιχεία ανήκουν}} ήδη στο άλμπουμ",
|
||||
"assets_were_part_of_albums_count": "Το/α {count, plural, one {στοιχείο ήταν} other {στοιχεία ήταν}} ήδη μέρος των άλμπουμ",
|
||||
"authorized_devices": "Εξουσιοδοτημένες Συσκευές",
|
||||
"automatic_endpoint_switching_subtitle": "Σύνδεση τοπικά μέσω του καθορισμένου Wi-Fi όταν είναι διαθέσιμο και χρήση εναλλακτικών συνδέσεων αλλού",
|
||||
"automatic_endpoint_switching_title": "Αυτόματη εναλλαγή URL",
|
||||
@@ -489,6 +528,7 @@
|
||||
"back_close_deselect": "Πίσω, κλείσιμο ή αποεπιλογή",
|
||||
"background_location_permission": "Άδεια τοποθεσίας στο παρασκήνιο",
|
||||
"background_location_permission_content": "Το Immich για να μπορεί να αλλάζει δίκτυα όταν τρέχει στο παρασκήνιο, πρέπει *πάντα* να έχει πρόσβαση στην ακριβή τοποθεσία ώστε η εφαρμογή να μπορεί να διαβάζει το όνομα του δικτύου Wi-Fi",
|
||||
"backup": "Αντίγραφο ασφαλείας",
|
||||
"backup_album_selection_page_albums_device": "Άλμπουμ στη συσκευή ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Πάτημα για συμπερίληψη, διπλό πάτημα για εξαίρεση",
|
||||
"backup_album_selection_page_assets_scatter": "Τα στοιχεία μπορεί να διασκορπιστούν σε πολλά άλμπουμ. Έτσι, τα άλμπουμ μπορούν να περιληφθούν ή να εξαιρεθούν κατά τη διαδικασία δημιουργίας αντιγράφων ασφαλείας.",
|
||||
@@ -520,7 +560,7 @@
|
||||
"backup_controller_page_background_turn_off": "Απενεργοποίηση υπηρεσίας παρασκηνίου",
|
||||
"backup_controller_page_background_turn_on": "Ενεργοποίηση υπηρεσίας παρασκηνίου",
|
||||
"backup_controller_page_background_wifi": "Μόνο σε σύνδεση Wi-Fi",
|
||||
"backup_controller_page_backup": "Αντίγραφα ασφαλείας",
|
||||
"backup_controller_page_backup": "Αντίγραφο ασφαλείας",
|
||||
"backup_controller_page_backup_selected": "Επιλεγμένα: ",
|
||||
"backup_controller_page_backup_sub": "Φωτογραφίες και βίντεο για τα οποία έχουν δημιουργηθεί αντίγραφα ασφαλείας",
|
||||
"backup_controller_page_created": "Δημιουργήθηκε στις: {date}",
|
||||
@@ -549,9 +589,13 @@
|
||||
"backup_manual_in_progress": "Μεταφόρτωση σε εξέλιξη. Δοκιμάστε αργότερα",
|
||||
"backup_manual_success": "Επιτυχία",
|
||||
"backup_manual_title": "Κατάσταση μεταφόρτωσης",
|
||||
"backup_options": "Επιλογές αντιγράφου ασφαλείας",
|
||||
"backup_options_page_title": "Επιλογές αντιγράφων ασφαλείας",
|
||||
"backup_setting_subtitle": "Διαχείριση ρυθμίσεων μεταφόρτωσης στο παρασκήνιο και στο προσκήνιο",
|
||||
"backup_settings_subtitle": "Διαχείριση των ρυθμίσεων μεταφόρτωσης",
|
||||
"backward": "Προς τα πίσω",
|
||||
"beta_sync": "Κατάσταση Συγχρονισμού Beta (δοκιμαστική)",
|
||||
"beta_sync_subtitle": "Διαχείριση του νέου συστήματος συγχρονισμού",
|
||||
"biometric_auth_enabled": "Βιομετρική ταυτοποίηση ενεργοποιήθηκε",
|
||||
"biometric_locked_out": "Είστε κλειδωμένοι εκτός της βιομετρικής ταυτοποίησης",
|
||||
"biometric_no_options": "Δεν υπάρχουν διαθέσιμοι τρόποι βιομετρικής ταυτοποίησης",
|
||||
@@ -586,6 +630,7 @@
|
||||
"cancel": "Ακύρωση",
|
||||
"cancel_search": "Ακύρωση αναζήτησης",
|
||||
"canceled": "Ακυρωμένο",
|
||||
"canceling": "Ακυρώνεται",
|
||||
"cannot_merge_people": "Αδύνατη η συγχώνευση ατόμων",
|
||||
"cannot_undo_this_action": "Δεν μπορείτε να αναιρέσετε αυτήν την ενέργεια!",
|
||||
"cannot_update_the_description": "Αδύνατη η ενημέρωση της περιγραφής",
|
||||
@@ -617,6 +662,7 @@
|
||||
"clear": "Εκκαθάριση",
|
||||
"clear_all": "Εκκαθάριση όλων",
|
||||
"clear_all_recent_searches": "Εκκαθάριση όλων των πρόσφατων αναζητήσεων",
|
||||
"clear_file_cache": "Εκκαθάριση της Προσωρινής Μνήμης Αρχείων",
|
||||
"clear_message": "Εκκαθάριση μηνύματος",
|
||||
"clear_value": "Εκκαθάριση τιμής",
|
||||
"client_cert_dialog_msg_confirm": "ΟΚ",
|
||||
@@ -687,6 +733,7 @@
|
||||
"create_new_user": "Δημιουργία νέου χρήστη",
|
||||
"create_shared_album_page_share_add_assets": "ΠΡΟΣΘΗΚΗ ΣΤΟΙΧΕΙΩΝ",
|
||||
"create_shared_album_page_share_select_photos": "Επιλέξτε Φωτογραφίες",
|
||||
"create_shared_link": "Δημιουργία κοινόχρηστου συνδέσμου",
|
||||
"create_tag": "Δημιουργία ετικέτας",
|
||||
"create_tag_description": "Δημιουργία νέας ετικέτας. Για τις ένθετες ετικέτες, παρακαλώ εισάγετε τη πλήρη διαδρομή της, συμπεριλαμβανομένων των κάθετων διαχωριστικών.",
|
||||
"create_user": "Δημιουργία χρήστη",
|
||||
@@ -699,9 +746,11 @@
|
||||
"current_server_address": "Τρέχουσα διεύθυνση διακομιστή",
|
||||
"custom_locale": "Προσαρμοσμένη Τοπική Ρύθμιση",
|
||||
"custom_locale_description": "Μορφοποιήστε τις ημερομηνίες και τους αριθμούς, σύμφωνα με τη γλώσσα και την περιοχή",
|
||||
"custom_url": "Προσαρμοσμένη διεύθυνση URL",
|
||||
"daily_title_text_date": "Ε, MMM dd",
|
||||
"daily_title_text_date_year": "Ε, MMM dd, yyyy",
|
||||
"dark": "Σκούρο",
|
||||
"dark_theme": "Εναλλαγή σκοτεινής εμφάνισης",
|
||||
"date_after": "Ημερομηνία μετά",
|
||||
"date_and_time": "Ημερομηνία και ώρα",
|
||||
"date_before": "Ημερομηνία πριν",
|
||||
@@ -709,6 +758,7 @@
|
||||
"date_of_birth_saved": "Η ημερομηνία γέννησης αποθηκεύτηκε επιτυχώς",
|
||||
"date_range": "Εύρος ημερομηνιών",
|
||||
"day": "Ημέρα",
|
||||
"days": "Ημέρες",
|
||||
"deduplicate_all": "Αφαίρεση όλων των διπλότυπων",
|
||||
"deduplication_criteria_1": "Μέγεθος εικόνας σε byte",
|
||||
"deduplication_criteria_2": "Αριθμός δεδομένων EXIF",
|
||||
@@ -717,6 +767,8 @@
|
||||
"default_locale": "Προεπιλεγμένη Τοπική Ρύθμιση",
|
||||
"default_locale_description": "Μορφοποιήστε τις ημερομηνίες και τους αριθμούς με βάση την τοπική ρύθμιση του προγράμματος περιήγησής σας",
|
||||
"delete": "Διαγραφή",
|
||||
"delete_action_confirmation_message": "Είστε σίγουροι ότι θέλετε να διαγράψετε αυτό το αρχείο; Αυτή η ενέργεια θα το μετακινήσει στον κάδο απορριμμάτων του διακομιστή και θα εμφανιστεί μήνυμα για το αν θέλετε να το διαγράψετε και τοπικά",
|
||||
"delete_action_prompt": "{count} διαγράφηκαν",
|
||||
"delete_album": "Διαγραφή άλμπουμ",
|
||||
"delete_api_key_prompt": "Είστε σίγουροι ότι θέλετε να διαγράψετε αυτό κλειδί API;",
|
||||
"delete_dialog_alert": "Αυτά τα αντικείμενα θα διαγραφούν οριστικά από το Immich και από τη συσκευή σας",
|
||||
@@ -730,9 +782,12 @@
|
||||
"delete_key": "Διαγραφή κλειδιού",
|
||||
"delete_library": "Διαγραφή Βιβλιοθήκης",
|
||||
"delete_link": "Διαγραφή συνδέσμου",
|
||||
"delete_local_action_prompt": "{count} διαγράφηκαν τοπικά",
|
||||
"delete_local_dialog_ok_backed_up_only": "Διαγραφή μόνο των αντιγράφων ασφαλείας",
|
||||
"delete_local_dialog_ok_force": "Διαγραφή όπως και να έχει",
|
||||
"delete_others": "Διαγραφή υπολοίπων",
|
||||
"delete_permanently": "Διαγραφή οριστικά",
|
||||
"delete_permanently_action_prompt": "{count} διαγράφηκε οριστικά",
|
||||
"delete_shared_link": "Διαγραφή κοινόχρηστου συνδέσμου",
|
||||
"delete_shared_link_dialog_title": "Διαγραφή Κοινοποιημένου Συνδέσμου",
|
||||
"delete_tag": "Διαγραφή ετικέτας",
|
||||
@@ -743,6 +798,7 @@
|
||||
"description": "Περιγραφή",
|
||||
"description_input_hint_text": "Προσθήκη περιγραφής...",
|
||||
"description_input_submit_error": "Σφάλμα κατά την ενημέρωση της περιγραφής, ελέγξτε το αρχείο καταγραφής για περισσότερες λεπτομέρειες",
|
||||
"deselect_all": "Ακύρωση όλων των επιλογών",
|
||||
"details": "Λεπτομέρειες",
|
||||
"direction": "Κατεύθυνση",
|
||||
"disabled": "Απενεργοποιημένο",
|
||||
@@ -760,6 +816,7 @@
|
||||
"documentation": "Τεκμηρίωση",
|
||||
"done": "Έγινε",
|
||||
"download": "Λήψη",
|
||||
"download_action_prompt": "Κατέβασμα {count} στοιχείων",
|
||||
"download_canceled": "Η λήψη ακυρώθηκε",
|
||||
"download_complete": "Η λήψη ολοκληρώθηκε",
|
||||
"download_enqueue": "Η λήψη τέθηκε σε ουρά",
|
||||
@@ -786,8 +843,12 @@
|
||||
"edit": "Επεξεργασία",
|
||||
"edit_album": "Επεξεργασία άλμπουμ",
|
||||
"edit_avatar": "Επεξεργασία άβαταρ",
|
||||
"edit_birthday": "Επεξεργασία γενεθλίων",
|
||||
"edit_date": "Επεξεργασία ημερομηνίας",
|
||||
"edit_date_and_time": "Επεξεργασία ημερομηνίας και ώρας",
|
||||
"edit_date_and_time_action_prompt": "{count} ημερομηνία και ώρα επεξεργάστηκαν",
|
||||
"edit_date_and_time_by_offset": "Αλλαγή ημερομηνίας με μετατόπιση",
|
||||
"edit_date_and_time_by_offset_interval": "Νέο εύρος ημερομηνιών: {from} - {to}",
|
||||
"edit_description": "Επεξεργασία περιγραφής",
|
||||
"edit_description_prompt": "Παρακαλώ επιλέξτε νέα περιγραφή:",
|
||||
"edit_exclusion_pattern": "Επεξεργασία μοτίβου αποκλεισμού",
|
||||
@@ -797,6 +858,7 @@
|
||||
"edit_key": "Επεξεργασία κλειδιού",
|
||||
"edit_link": "Επεξεργασία συνδέσμου",
|
||||
"edit_location": "Επεξεργασία τοποθεσίας",
|
||||
"edit_location_action_prompt": "Επεξεργάστηκαν {count} τοποθεσίες",
|
||||
"edit_location_dialog_title": "Τοποθεσία",
|
||||
"edit_name": "Επεξεργασία ονόματος",
|
||||
"edit_people": "Επεξεργασία ατόμων",
|
||||
@@ -815,6 +877,7 @@
|
||||
"empty_trash": "Άδειασμα κάδου απορριμμάτων",
|
||||
"empty_trash_confirmation": "Είστε σίγουροι οτι θέλετε να αδειάσετε τον κάδο απορριμμάτων; Αυτό θα αφαιρέσει μόνιμα όλα τα στοιχεία του κάδου απορριμμάτων του Immich. \nΑυτή η ενέργεια δεν μπορεί να αναιρεθεί!",
|
||||
"enable": "Ενεργοποίηση",
|
||||
"enable_backup": "Ενεργοποίηση αντιγράφου ασφαλείας",
|
||||
"enable_biometric_auth_description": "Εισάγετε τον κωδικό PIN σας για να ενεργοποιήσετε την βιομετρική ταυτοποίηση",
|
||||
"enabled": "Ενεργοποιημένο",
|
||||
"end_date": "Τελική ημερομηνία",
|
||||
@@ -858,6 +921,7 @@
|
||||
"failed_to_load_notifications": "Αποτυχία φόρτωσης ειδοποιήσεων",
|
||||
"failed_to_load_people": "Αποτυχία φόρτωσης ατόμων",
|
||||
"failed_to_remove_product_key": "Αποτυχία αφαίρεσης κλειδιού προϊόντος",
|
||||
"failed_to_reset_pin_code": "Αποτυχία επαναφοράς του PIN",
|
||||
"failed_to_stack_assets": "Αποτυχία στην συμπίεση των στοιχείων",
|
||||
"failed_to_unstack_assets": "Αποτυχία στην αποσυμπίεση των στοιχείων",
|
||||
"failed_to_update_notification_status": "Αποτυχία ενημέρωσης της κατάστασης ειδοποίησης",
|
||||
@@ -866,6 +930,7 @@
|
||||
"paths_validation_failed": "{paths, plural, one {# διαδρομή} other {# διαδρομές}} απέτυχαν κατά την επικύρωση",
|
||||
"profile_picture_transparent_pixels": "Οι εικόνες προφίλ δεν μπορούν να έχουν διαφανή εικονοστοιχεία. Παρακαλώ μεγεθύνετε ή/και μετακινήστε την εικόνα.",
|
||||
"quota_higher_than_disk_size": "Έχετε ορίσει ένα όριο, μεγαλύτερο από το μέγεθος του δίσκου",
|
||||
"something_went_wrong": "Κάτι πήγε στραβά",
|
||||
"unable_to_add_album_users": "Αδυναμία προσθήκης χρήστη στο άλμπουμ",
|
||||
"unable_to_add_assets_to_shared_link": "Αδυναμία προσθήκης στοιχείου στον κοινόχρηστο σύνδεσμο",
|
||||
"unable_to_add_comment": "Αδυναμία προσθήκης σχολίου",
|
||||
@@ -951,13 +1016,11 @@
|
||||
},
|
||||
"exif": "Μεταδεδομένα Exif",
|
||||
"exif_bottom_sheet_description": "Προσθήκη Περιγραφής...",
|
||||
"exif_bottom_sheet_description_error": "Σφάλμα κατά την ενημέρωση της περιγραφής",
|
||||
"exif_bottom_sheet_details": "ΛΕΠΤΟΜΕΡΕΙΕΣ",
|
||||
"exif_bottom_sheet_location": "ΤΟΠΟΘΕΣΙΑ",
|
||||
"exif_bottom_sheet_people": "ΑΤΟΜΑ",
|
||||
"exif_bottom_sheet_person_add_person": "Προσθήκη ονόματος",
|
||||
"exif_bottom_sheet_person_age_months": "Ηλικία {months} μήνες",
|
||||
"exif_bottom_sheet_person_age_year_months": "Ηλικία 1 έτους, {months} μηνών",
|
||||
"exif_bottom_sheet_person_age_years": "Ηλικία {years}",
|
||||
"exit_slideshow": "Έξοδος από την παρουσίαση",
|
||||
"expand_all": "Ανάπτυξη όλων",
|
||||
"experimental_settings_new_asset_list_subtitle": "Σε εξέλιξη",
|
||||
@@ -971,6 +1034,8 @@
|
||||
"explorer": "Περιηγητής",
|
||||
"export": "Εξαγωγή",
|
||||
"export_as_json": "Εξαγωγή ως JSON",
|
||||
"export_database": "Εξαγωγή βάσης δεδομένων",
|
||||
"export_database_description": "Εξαγωγή της SQLite βάσης δεδομένων",
|
||||
"extension": "Επέκταση",
|
||||
"external": "Εξωτερικός",
|
||||
"external_libraries": "Εξωτερικές βιβλιοθήκες",
|
||||
@@ -982,6 +1047,7 @@
|
||||
"failed_to_load_assets": "Αποτυχία φόρτωσης στοιχείων",
|
||||
"failed_to_load_folder": "Αποτυχία φόρτωσης φακέλου",
|
||||
"favorite": "Αγαπημένο",
|
||||
"favorite_action_prompt": "Προστέθηκαν {count} στα Αγαπημένα",
|
||||
"favorite_or_unfavorite_photo": "Ορίστε μία φωτογραφία ως αγαπημένη ή αφαιρέστε την από τα αγαπημένα",
|
||||
"favorites": "Αγαπημένα",
|
||||
"favorites_page_no_favorites": "Δεν βρέθηκαν αγαπημένα στοιχεία",
|
||||
@@ -996,11 +1062,13 @@
|
||||
"filter_people": "Φιλτράρισμα ατόμων",
|
||||
"filter_places": "Φιλτράρισμα τοποθεσιών",
|
||||
"find_them_fast": "Βρείτε τους γρήγορα με αναζήτηση κατά όνομα",
|
||||
"first": "Αρχικά",
|
||||
"fix_incorrect_match": "Διόρθωση λανθασμένης αντιστοίχισης",
|
||||
"folder": "Φάκελος",
|
||||
"folder_not_found": "Ο φάκελος δεν βρέθηκε",
|
||||
"folders": "Φάκελοι",
|
||||
"folders_feature_description": "Περιήγηση στην προβολή φακέλου για τις φωτογραφίες και τα βίντεο στο σύστημα αρχείων",
|
||||
"forgot_pin_code_question": "Ξεχάσατε το PIN;",
|
||||
"forward": "Προς τα εμπρός",
|
||||
"gcast_enabled": "Μετάδοση περιεχομένου Google Cast",
|
||||
"gcast_enabled_description": "Αυτό το χαρακτηριστικό φορτώνει εξωτερικούς πόρους από τη Google για να λειτουργήσει.",
|
||||
@@ -1021,6 +1089,9 @@
|
||||
"haptic_feedback_switch": "Ενεργοποίηση απτικής ανάδρασης",
|
||||
"haptic_feedback_title": "Απτική Ανάδραση",
|
||||
"has_quota": "Έχει ποσόστωση",
|
||||
"hash_asset": "Κατακερματισμός στοιχείου",
|
||||
"hashed_assets": "Κατακερματισμένα στοιχεία",
|
||||
"hashing": "Κατακερματισμός",
|
||||
"header_settings_add_header_tip": "Προσθήκη Κεφαλίδας",
|
||||
"header_settings_field_validator_msg": "Η τιμή δεν μπορεί να είναι κενή",
|
||||
"header_settings_header_name_input": "Όνομα κεφαλίδας",
|
||||
@@ -1052,7 +1123,9 @@
|
||||
"home_page_upload_err_limit": "Μπορείτε να ανεβάσετε μόνο 30 στοιχεία κάθε φορά, παραλείπεται",
|
||||
"host": "Φιλοξενία",
|
||||
"hour": "Ώρα",
|
||||
"hours": "Ώρες",
|
||||
"id": "ID",
|
||||
"idle": "Αδράνεια",
|
||||
"ignore_icloud_photos": "Αγνοήστε τις φωτογραφίες iCloud",
|
||||
"ignore_icloud_photos_description": "Οι φωτογραφίες που είναι αποθηκευμένες στο iCloud δεν θα μεταφορτωθούν στον διακομιστή Immich",
|
||||
"image": "Εικόνα",
|
||||
@@ -1110,10 +1183,13 @@
|
||||
"language_no_results_title": "Δε βρέθηκαν γλώσσες",
|
||||
"language_search_hint": "Αναζήτηση γλωσσών...",
|
||||
"language_setting_description": "Επιλέξτε τη γλώσσα που προτιμάτε",
|
||||
"large_files": "Μεγάλα Αρχεία",
|
||||
"last": "Τελευταία",
|
||||
"last_seen": "Τελευταία προβολή",
|
||||
"latest_version": "Τελευταία Έκδοση",
|
||||
"latitude": "Γεωγραφικό πλάτος",
|
||||
"leave": "Εγκατάλειψη",
|
||||
"leave_album": "Αποχώρηση από το άλμπουμ",
|
||||
"lens_model": "Μοντέλο φακού",
|
||||
"let_others_respond": "Επέτρεψε σε άλλους να απαντήσουν",
|
||||
"level": "Επίπεδο",
|
||||
@@ -1125,16 +1201,19 @@
|
||||
"library_page_sort_created": "Ημερομηνία δημιουργίας",
|
||||
"library_page_sort_last_modified": "Τελευταία τροποποίηση",
|
||||
"library_page_sort_title": "Τίτλος άλμπουμ",
|
||||
"licenses": "Άδειες",
|
||||
"light": "Φωτεινό",
|
||||
"like": "Μου αρέσει",
|
||||
"like_deleted": "Το \"μου αρέσει\" διαγράφηκε",
|
||||
"link_motion_video": "Σύνδεσε βίντεο κίνησης",
|
||||
"link_options": "Επιλογές συνδέσμου",
|
||||
"link_to_oauth": "Σύνδεση στον OAuth",
|
||||
"linked_oauth_account": "Ο OAuth λογαριασμός συνδέθηκε",
|
||||
"list": "Λίστα",
|
||||
"loading": "Φόρτωση",
|
||||
"loading_search_results_failed": "Η φόρτωση αποτελεσμάτων αναζήτησης απέτυχε",
|
||||
"local": "Τοπικά",
|
||||
"local_asset_cast_failed": "Αδυναμία μετάδοσης στοιχείου που δεν έχει ανέβει στον διακομιστή",
|
||||
"local_assets": "Τοπικά στοιχεία",
|
||||
"local_network": "Τοπικό δίκτυο",
|
||||
"local_network_sheet_info": "Η εφαρμογή θα συνδεθεί με τον διακομιστή μέσω αυτού του URL όταν χρησιμοποιείται το καθορισμένο δίκτυο Wi-Fi",
|
||||
"location_permission": "Άδεια τοποθεσίας",
|
||||
@@ -1191,8 +1270,7 @@
|
||||
"manage_your_devices": "Διαχειριστείτε τις συνδεδεμένες συσκευές σας",
|
||||
"manage_your_oauth_connection": "Διαχειριστείτε τη σύνδεσή σας OAuth",
|
||||
"map": "Χάρτης",
|
||||
"map_assets_in_bound": "{count} φωτογραφία",
|
||||
"map_assets_in_bounds": "{count} φωτογραφίες",
|
||||
"map_assets_in_bounds": "{count, plural, =0 {Καμία φωτογραφία σε αυτή την περιοχή} one {# φωτογραφία} other {# φωτογραφίες}}",
|
||||
"map_cannot_get_user_location": "Δεν είναι δυνατή η λήψη της τοποθεσίας του χρήστη",
|
||||
"map_location_dialog_yes": "Ναι",
|
||||
"map_location_picker_page_use_location": "Χρησιμοποιήστε αυτήν την τοποθεσία",
|
||||
@@ -1200,7 +1278,6 @@
|
||||
"map_location_service_disabled_title": "Η υπηρεσία τοποθεσίας απενεργοποιήθηκε",
|
||||
"map_marker_for_images": "Δείκτης χάρτη για εικόνες που τραβήχτηκαν σε {city}, {country}",
|
||||
"map_marker_with_image": "Χάρτης δείκτη με εικόνα",
|
||||
"map_no_assets_in_bounds": "Δεν υπάρχουν φωτογραφίες σε αυτήν την περιοχή",
|
||||
"map_no_location_permission_content": "Απαιτείται άδεια τοποθεσίας για την εμφάνιση στοιχείων από την τρέχουσα τοποθεσία σας. Θέλετε να το επιτρέψετε τώρα;",
|
||||
"map_no_location_permission_title": "Η άδεια τοποθεσίας απορρίφθηκε",
|
||||
"map_settings": "Ρυθμίσεις χάρτη",
|
||||
@@ -1237,6 +1314,7 @@
|
||||
"merged_people_count": "Έγινε συγχώνευση {count, plural, one {# ατόμου} other {# ατόμων}}",
|
||||
"minimize": "Ελαχιστοποίηση",
|
||||
"minute": "Λεπτό",
|
||||
"minutes": "Λεπτά",
|
||||
"missing": "Όσα Λείπουν",
|
||||
"model": "Μοντέλο",
|
||||
"month": "Μήνας",
|
||||
@@ -1244,6 +1322,7 @@
|
||||
"more": "Περισσότερα",
|
||||
"move": "Μετακίνηση",
|
||||
"move_off_locked_folder": "Μετακίνηση έξω από τον κλειδωμένο φάκελο",
|
||||
"move_to_lock_folder_action_prompt": "Προστέθηκαν {count} στον κλειδωμένο φάκελο",
|
||||
"move_to_locked_folder": "Μετακίνηση σε κλειδωμένο φάκελο",
|
||||
"move_to_locked_folder_confirmation": "Αυτές οι φωτογραφίες και τα βίντεο θα αφαιρεθούν από όλα τα άλμπουμ και θα μπορούν να προβληθούν μόνο από τον κλειδωμένο φάκελο",
|
||||
"moved_to_archive": "Μετακινήθηκαν {count, plural, one {# στοιχείο} other {# στοιχεία}} στο αρχείο",
|
||||
@@ -1255,6 +1334,9 @@
|
||||
"my_albums": "Τα άλμπουμ μου",
|
||||
"name": "Όνομα",
|
||||
"name_or_nickname": "Όνομα ή ψευδώνυμο",
|
||||
"network_requirement_photos_upload": "Χρήση δεδομένων κινητής τηλεφωνίας για τη δημιουργία αντιγράφων ασφαλείας των φωτογραφιών",
|
||||
"network_requirement_videos_upload": "Χρήση δεδομένων κινητής τηλεφωνίας για τη δημιουργία αντιγράφων ασφαλείας των βίντεο",
|
||||
"network_requirements_updated": "Οι απαιτήσεις δικτύου άλλαξαν, γίνεται επαναφορά της ουράς αντιγράφων ασφαλείας",
|
||||
"networking_settings": "Δικτύωση",
|
||||
"networking_subtitle": "Διαχείριση ρυθμίσεων τελικών σημείων διακομιστή",
|
||||
"never": "Ποτέ",
|
||||
@@ -1290,6 +1372,7 @@
|
||||
"no_results": "Κανένα αποτέλεσμα",
|
||||
"no_results_description": "Δοκιμάστε ένα συνώνυμο ή πιο γενική λέξη-κλειδί",
|
||||
"no_shared_albums_message": "Δημιουργήστε ένα άλμπουμ για να μοιράζεστε φωτογραφίες και βίντεο με άτομα στο δίκτυό σας",
|
||||
"no_uploads_in_progress": "Καμία μεταφόρτωση σε εξέλιξη",
|
||||
"not_in_any_album": "Σε κανένα άλμπουμ",
|
||||
"not_selected": "Δεν επιλέχθηκε",
|
||||
"note_apply_storage_label_to_previously_uploaded assets": "Σημείωση: Για να εφαρμόσετε την Ετικέτα Αποθήκευσης σε στοιχεία που έχουν μεταφορτωθεί προηγουμένως, εκτελέστε το",
|
||||
@@ -1305,6 +1388,7 @@
|
||||
"oauth": "OAuth",
|
||||
"official_immich_resources": "Επίσημοι Πόροι του Immich",
|
||||
"offline": "Εκτός σύνδεσης",
|
||||
"offset": "Μετατόπιση",
|
||||
"ok": "Έγινε",
|
||||
"oldest_first": "Τα παλαιότερα πρώτα",
|
||||
"on_this_device": "Σε αυτή τη συσκευή",
|
||||
@@ -1327,6 +1411,7 @@
|
||||
"original": "πρωτότυπο",
|
||||
"other": "Άλλες",
|
||||
"other_devices": "Άλλες συσκευές",
|
||||
"other_entities": "Άλλες οντότητες",
|
||||
"other_variables": "Άλλες μεταβλητές",
|
||||
"owned": "Δικά μου",
|
||||
"owner": "Κάτοχος",
|
||||
@@ -1381,6 +1466,9 @@
|
||||
"permission_onboarding_permission_limited": "Περιορισμένη άδεια. Για να επιτρέψετε στο Immich να δημιουργεί αντίγραφα ασφαλείας και να διαχειρίζεται ολόκληρη τη συλλογή σας, παραχωρήστε άδειες φωτογραφιών και βίντεο στις Ρυθμίσεις.",
|
||||
"permission_onboarding_request": "Το Immich απαιτεί άδεια πρόσβασεις στις φωτογραφίες και τα βίντεό σας.",
|
||||
"person": "Άτομο",
|
||||
"person_age_months": "{months, plural, one {# μήνας} other {# μήνες}} παλιά",
|
||||
"person_age_year_months": "1 χρόνος, {months, plural, one {# μήνας} other {# μήνες}} παλιά",
|
||||
"person_age_years": "{years, plural, other {# χρόνια}} παλιά",
|
||||
"person_birthdate": "Γεννηθείς στις {date}",
|
||||
"person_hidden": "{name}{hidden, select, true { (κρυφό)} other {}}",
|
||||
"photo_shared_all_users": "Φαίνεται ότι μοιραστήκατε τις φωτογραφίες σας με όλους τους χρήστες ή δεν έχετε κανέναν χρήστη για κοινή χρήση.",
|
||||
@@ -1458,6 +1546,7 @@
|
||||
"purchase_server_description_2": "Κατάσταση υποστηρικτή",
|
||||
"purchase_server_title": "Διακομιστής",
|
||||
"purchase_settings_server_activated": "Η διαχείριση του κλειδιού προϊόντος του διακομιστή γίνεται από τον διαχειριστή",
|
||||
"queue_status": "Τοποθέτηση στη ουρά {count} από {total}",
|
||||
"rating": "Αξιολόγηση με αστέρια",
|
||||
"rating_clear": "Εκκαθάριση αξιολόγησης",
|
||||
"rating_count": "{count, plural, one {# αστέρι} other {# αστέρια}}",
|
||||
@@ -1486,6 +1575,8 @@
|
||||
"refreshing_faces": "Ανανεώνονται πρόσωπα",
|
||||
"refreshing_metadata": "Τα μεταδεδομένα ανανεώνονται",
|
||||
"regenerating_thumbnails": "Οι μικρογραφίες αναγεννώνται",
|
||||
"remote": "Απομακρυσμένος",
|
||||
"remote_assets": "Απομακρυσμένα στοιχεία",
|
||||
"remove": "Αφαίρεση",
|
||||
"remove_assets_album_confirmation": "Είστε σίγουροι ότι θέλετε να αφαιρέσετε {count, plural, one {# στοιχείο} other {# στοιχεία}} από το άλμπουμ;",
|
||||
"remove_assets_shared_link_confirmation": "Είστε σίγουροι ότι θέλετε να αφαιρέσετε {count, plural, one {# στοιχείο} other {# στοιχεία}} από αυτόν τον κοινόχρηστο σύνδεσμο;",
|
||||
@@ -1493,7 +1584,9 @@
|
||||
"remove_custom_date_range": "Αφαίρεση προσαρμοσμένης χρονικής περιόδου",
|
||||
"remove_deleted_assets": "Αφαίρεση Διεγραμμένων Στοιχείων",
|
||||
"remove_from_album": "Αφαίρεση από το άλμπουμ",
|
||||
"remove_from_album_action_prompt": "{count} αφαιρέθηκαν από το άλμπουμ",
|
||||
"remove_from_favorites": "Αφαίρεση από τα αγαπημένα",
|
||||
"remove_from_lock_folder_action_prompt": "{count} αφαιρέθηκαν από τον κλειδωμένο φάκελο",
|
||||
"remove_from_locked_folder": "Αφαίρεση από κλειδωμένο φάκελο",
|
||||
"remove_from_locked_folder_confirmation": "Είστε σίγουροι ότι θέλετε να μετακινήσετε αυτές τις φωτογραφίες και τα βίντεο από τον κλειδωμένο φάκελο; Θα είναι πλέον ορατές στη βιβλιοθήκη σας.",
|
||||
"remove_from_shared_link": "Αφαίρεση από τον κοινόχρηστο σύνδεσμο",
|
||||
@@ -1521,19 +1614,28 @@
|
||||
"reset_password": "Επαναφορά κωδικού πρόσβασης",
|
||||
"reset_people_visibility": "Επαναφορά προβολής ατόμων",
|
||||
"reset_pin_code": "Επαναφορά κωδικού PIN",
|
||||
"reset_pin_code_description": "Αν ξεχάσατε τον κωδικό PIN σας, μπορείτε να επικοινωνήσετε με τον διαχειριστή του διακομιστή για να τον επαναφέρει",
|
||||
"reset_pin_code_success": "Ο κωδικός PIN επαναφέρθηκε επιτυχώς",
|
||||
"reset_pin_code_with_password": "Μπορείτε πάντα να επαναφέρετε τον κωδικό PIN χρησιμοποιώντας τον κωδικό πρόσβασής σας",
|
||||
"reset_sqlite": "Επαναφορά SQLite βάσης δεδομένων",
|
||||
"reset_sqlite_confirmation": "Είσαι σίγουρος ότι θέλεις να επαναφέρεις τη βάση δεδομένων SQLite; Θα χρειαστεί να κάνεις αποσύνδεση και επανασύνδεση για να επανασυγχρονίσεις τα δεδομένα",
|
||||
"reset_sqlite_success": "Η επαναφορά της SQLite βάσης δεδομένων ολοκληρώθηκε με επιτυχία",
|
||||
"reset_to_default": "Επαναφορά στις προεπιλογές",
|
||||
"resolve_duplicates": "Επίλυση διπλοτύπων",
|
||||
"resolved_all_duplicates": "Επιλύθηκαν όλα τα διπλότυπα",
|
||||
"restore": "Ανάκτηση",
|
||||
"restore_all": "Ανάκτηση όλων",
|
||||
"restore_trash_action_prompt": "{count} ανακτήθηκαν από τα απορρίμματα",
|
||||
"restore_user": "Επαναφορά χρήστη",
|
||||
"restored_asset": "Ανακτήθηκε το αρχείο",
|
||||
"resume": "Συνέχιση",
|
||||
"retry_upload": "Επανάληψη ανεβάσματος",
|
||||
"review_duplicates": "Προβολή διπλότυπων",
|
||||
"review_large_files": "Επισκόπηση μεγάλων αρχείων",
|
||||
"role": "Ρόλος",
|
||||
"role_editor": "Επεξεργαστής",
|
||||
"role_viewer": "Θεατής",
|
||||
"running": "Σε λειτουργία",
|
||||
"save": "Αποθήκευση",
|
||||
"save_to_gallery": "Αποθήκευση στη συλλογή",
|
||||
"saved_api_key": "Αποθηκευμένο API key",
|
||||
@@ -1665,6 +1767,7 @@
|
||||
"settings_saved": "Οι ρυθμίσεις αποθηκεύτηκαν",
|
||||
"setup_pin_code": "Ρύθμιση κωδικού PIN",
|
||||
"share": "Κοινοποίηση",
|
||||
"share_action_prompt": "Κοινή χρήση {count} στοιχείων",
|
||||
"share_add_photos": "Προσθήκη φωτογραφιών",
|
||||
"share_assets_selected": "{count} επιλεγμένα",
|
||||
"share_dialog_preparing": "Προετοιμασία...",
|
||||
@@ -1686,6 +1789,7 @@
|
||||
"shared_link_clipboard_copied_massage": "Αντιγράφηκε στο πρόχειρο",
|
||||
"shared_link_clipboard_text": "Σύνδεσμος: {link}\nΚωδικός πρόσβασης: {password}",
|
||||
"shared_link_create_error": "Σφάλμα κατά τη δημιουργία κοινόχρηστου συνδέσμου",
|
||||
"shared_link_custom_url_description": "Αποκτήστε πρόσβαση σε αυτόν τον κοινόχρηστο σύνδεσμο με μια προσαρμοσμένη διεύθυνση URL",
|
||||
"shared_link_edit_description_hint": "Εισαγάγετε την περιγραφή της κοινής χρήσης",
|
||||
"shared_link_edit_expire_after_option_day": "1 ημέρα",
|
||||
"shared_link_edit_expire_after_option_days": "{count} ημέρες",
|
||||
@@ -1711,6 +1815,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "Διαχείριση Κοινόχρηστων Συνδέσμων",
|
||||
"shared_link_options": "Επιλογές κοινόχρηστου συνδέσμου",
|
||||
"shared_link_password_description": "Απαίτηση κωδικού για πρόσβαση στον κοινοποιημένο σύνδεσμο",
|
||||
"shared_links": "Κοινόχρηστοι σύνδεσμοι",
|
||||
"shared_links_description": "Μοιραστείτε φωτογραφίες και βίντεο με σύνδεσμο",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, other {# κοινόχρηστες φωτογραφίες & βίντεο.}}",
|
||||
@@ -1760,12 +1865,14 @@
|
||||
"sort_created": "Ημερομηνία Δημιουργίας",
|
||||
"sort_items": "Αριθμός αντικειμένων",
|
||||
"sort_modified": "Ημερομηνία τροποποίησης",
|
||||
"sort_newest": "Νεότερη φωτογραφία",
|
||||
"sort_oldest": "Η πιο παλιά φωτογραφία",
|
||||
"sort_people_by_similarity": "Ταξινόμηση ατόμων κατά ομοιότητα",
|
||||
"sort_recent": "Η πιο πρόσφατη φωτογραφία",
|
||||
"sort_title": "Τίτλος",
|
||||
"source": "Πηγή",
|
||||
"stack": "Στοίβα",
|
||||
"stack_action_prompt": "{count} συσσωρεύτηκαν",
|
||||
"stack_duplicates": "Στοίβαξη διπλότυπων",
|
||||
"stack_select_one_photo": "Επιλέξτε μια κύρια φωτογραφία για τη στοίβαξη",
|
||||
"stack_selected_photos": "Στοίβαγμα επιλεγμένων φωτογραφιών",
|
||||
@@ -1785,6 +1892,7 @@
|
||||
"storage_quota": "Ποσοστό αποθηκευτικού χώρου",
|
||||
"storage_usage": "{used} από {available} σε χρήση",
|
||||
"submit": "Υποβολή",
|
||||
"success": "Επιτυχία",
|
||||
"suggestions": "Προτάσεις",
|
||||
"sunrise_on_the_beach": "Ηλιοβασίλεμα στην παραλία",
|
||||
"support": "Υποστήριξη",
|
||||
@@ -1794,6 +1902,8 @@
|
||||
"sync": "Συγχρονισμός",
|
||||
"sync_albums": "Συγχρονισμός άλμπουμ",
|
||||
"sync_albums_manual_subtitle": "Συγχρονίστε όλα τα μεταφορτωμένα βίντεο και φωτογραφίες με τα επιλεγμένα εφεδρικά άλμπουμ",
|
||||
"sync_local": "Τοπικός Συγχρονισμός",
|
||||
"sync_remote": "Απομακρυσμένος Συγχρονισμός",
|
||||
"sync_upload_album_setting_subtitle": "Δημιουργήστε και ανεβάστε τις φωτογραφίες και τα βίντεό σας στα επιλεγμένα άλμπουμ στο Immich",
|
||||
"tag": "Ετικέτα",
|
||||
"tag_assets": "Ετικετοποίηση στοιχείων",
|
||||
@@ -1804,6 +1914,7 @@
|
||||
"tag_updated": "Ενημερώθηκε η ετικέτα: {tag}",
|
||||
"tagged_assets": "Ετικετοποιημένο/α {count, plural, one {# στοιχείο} other {# στοιχεία}}",
|
||||
"tags": "Ετικέτες",
|
||||
"tap_to_run_job": "Πατήστε για να ξεκινήσει η εργασία",
|
||||
"template": "Πρότυπο",
|
||||
"theme": "Θέμα",
|
||||
"theme_selection": "Επιλογή θέματος",
|
||||
@@ -1836,6 +1947,7 @@
|
||||
"total": "Σύνολο",
|
||||
"total_usage": "Συνολικη χρηση",
|
||||
"trash": "Κάδος απορριμμάτων",
|
||||
"trash_action_prompt": "{count} μετακινήθηκαν στα απορρίμματα",
|
||||
"trash_all": "Διαγραφή Όλων",
|
||||
"trash_count": "Διαγραφή {count, number}",
|
||||
"trash_delete_asset": "Διαγραφή/Οριστ. Διαγραφή Αντικειμένου",
|
||||
@@ -1853,9 +1965,11 @@
|
||||
"unable_to_change_pin_code": "Αδυναμία αλλαγής κωδικού PIN",
|
||||
"unable_to_setup_pin_code": "Αδυναμία ρύθμισης κωδικού PIN",
|
||||
"unarchive": "Αναίρεση αρχειοθέτησης",
|
||||
"unarchive_action_prompt": "{count} αφαιρέθηκαν από το Αρχείο",
|
||||
"unarchived_count": "{count, plural, other {Αρχειοθετήσεις αναιρέθηκαν #}}",
|
||||
"undo": "Αναίρεση",
|
||||
"unfavorite": "Αποεπιλογή από τα αγαπημένα",
|
||||
"unfavorite_action_prompt": "{count} αφαιρέθηκαν από τα Αγαπημένα",
|
||||
"unhide_person": "Αναίρεση απόκρυψης ατόμου",
|
||||
"unknown": "Άγνωστο",
|
||||
"unknown_country": "Άγνωστη Χώρα",
|
||||
@@ -1873,15 +1987,20 @@
|
||||
"unselect_all_duplicates": "Αποεπιλογή όλων των διπλότυπων",
|
||||
"unselect_all_in": "Αποεπιλογή όλων στο {group}",
|
||||
"unstack": "Αποστοίβαξη",
|
||||
"unstack_action_prompt": "{count} αποσυσσωρεύτηκαν",
|
||||
"unstacked_assets_count": "Αποστοιβάξατε {count, plural, one {# στοιχείο} other {# στοιχεία}}",
|
||||
"untagged": "Χωρίς ετικέτα",
|
||||
"up_next": "Ακολουθεί",
|
||||
"updated_at": "Ενημερωμένο",
|
||||
"updated_password": "Ο κωδικός πρόσβασης ενημερώθηκε",
|
||||
"upload": "Μεταφόρτωση",
|
||||
"upload_action_prompt": "{count} τοποθετήθηκαν στην ουρά για μεταφόρτωση",
|
||||
"upload_concurrency": "Ταυτόχρονη μεταφόρτωση",
|
||||
"upload_details": "Λεπτομέρειες μεταφόρτωσης",
|
||||
"upload_dialog_info": "Θέλετε να αντιγράψετε (κάνετε backup) τα επιλεγμένo(α) στοιχείο(α) στο διακομιστή;",
|
||||
"upload_dialog_title": "Ανέβασμα στοιχείου",
|
||||
"upload_errors": "Η μεταφόρτωση ολοκληρώθηκε με {count, plural, one {# σφάλμα} other {# σφάλματα}}, ανανεώστε τη σελίδα για να δείτε νέα στοιχεία μεταφόρτωσης.",
|
||||
"upload_finished": "Ολοκλήρωση μεταφόρτωσης",
|
||||
"upload_progress": "Απομένουν {remaining, number} - Ολοκληρώθηκαν {processed, number}/{total, number}",
|
||||
"upload_skipped_duplicates": "Παραλείφθηκαν {count, plural, one {# διπλότυπο στοιχείο} other {# διπλότυπα στοιχεία}}",
|
||||
"upload_status_duplicates": "Διπλότυπα",
|
||||
@@ -1890,6 +2009,7 @@
|
||||
"upload_success": "Η μεταφόρτωση ολοκληρώθηκε, ανανεώστε τη σελίδα για να δείτε τα νέα αντικείμενα.",
|
||||
"upload_to_immich": "Μεταφόρτωση στο Immich ({count})",
|
||||
"uploading": "Μεταφορτώνεται",
|
||||
"uploading_media": "Μεταφόρτωση πολυμέσων",
|
||||
"url": "URL",
|
||||
"usage": "Χρήση",
|
||||
"use_biometric": "Χρήση βιομετρικών στοιχείων",
|
||||
@@ -1910,6 +2030,7 @@
|
||||
"user_usage_stats_description": "Προβολή στατιστικών χρήσης λογαριασμού",
|
||||
"username": "Όνομα Χρήστη",
|
||||
"users": "Χρήστες",
|
||||
"users_added_to_album_count": "Προστέθηκε {count, plural, one {# χρήστης} other {# χρήστες}} στο άλμπουμ",
|
||||
"utilities": "Βοηθητικά προγράμματα",
|
||||
"validate": "Επικύρωση",
|
||||
"validate_endpoint_error": "Παρακαλώ εισάγετε ένα έγκυρο URL",
|
||||
@@ -1928,6 +2049,7 @@
|
||||
"view_album": "Προβολή Άλμπουμ",
|
||||
"view_all": "Προβολή Όλων",
|
||||
"view_all_users": "Προβολή όλων των χρηστών",
|
||||
"view_details": "Προβολή Λεπτομερειών",
|
||||
"view_in_timeline": "Προβολή στο χρονοδιάγραμμα",
|
||||
"view_link": "Προβολή σύνδεσμου",
|
||||
"view_links": "Προβολή συνδέσμων",
|
||||
|
||||
45
i18n/en.json
@@ -28,6 +28,9 @@
|
||||
"add_to_album": "Add to album",
|
||||
"add_to_album_bottom_sheet_added": "Added to {album}",
|
||||
"add_to_album_bottom_sheet_already_exists": "Already in {album}",
|
||||
"add_to_album_toggle": "Toggle selection for {album}",
|
||||
"add_to_albums": "Add to albums",
|
||||
"add_to_albums_count": "Add to albums ({count})",
|
||||
"add_to_shared_album": "Add to shared album",
|
||||
"add_url": "Add URL",
|
||||
"added_to_archive": "Added to archive",
|
||||
@@ -355,6 +358,9 @@
|
||||
"trash_number_of_days_description": "Number of days to keep the assets in trash before permanently removing them",
|
||||
"trash_settings": "Trash Settings",
|
||||
"trash_settings_description": "Manage trash settings",
|
||||
"unlink_all_oauth_accounts": "Unlink all OAuth accounts",
|
||||
"unlink_all_oauth_accounts_description": "Remember to unlink all OAuth accounts before migrating to a new provider.",
|
||||
"unlink_all_oauth_accounts_prompt": "Are you sure you want to unlink all OAuth accounts? This will reset the OAuth ID for each user and cannot be undone.",
|
||||
"user_cleanup_job": "User cleanup",
|
||||
"user_delete_delay": "<b>{user}</b>'s account and assets will be scheduled for permanent deletion in {delay, plural, one {# day} other {# days}}.",
|
||||
"user_delete_delay_settings": "Delete delay",
|
||||
@@ -494,7 +500,9 @@
|
||||
"assets": "Assets",
|
||||
"assets_added_count": "Added {count, plural, one {# asset} other {# assets}}",
|
||||
"assets_added_to_album_count": "Added {count, plural, one {# asset} other {# assets}} to the album",
|
||||
"assets_added_to_albums_count": "Added {assetTotal, plural, one {# asset} other {# assets}} to {albumTotal} albums",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {Asset} other {Assets}} cannot be added to the album",
|
||||
"assets_cannot_be_added_to_albums": "{count, plural, one {Asset} other {Assets}} cannot be added to any of the albums",
|
||||
"assets_count": "{count, plural, one {# asset} other {# assets}}",
|
||||
"assets_deleted_permanently": "{count} asset(s) deleted permanently",
|
||||
"assets_deleted_permanently_from_server": "{count} asset(s) deleted permanently from the Immich server",
|
||||
@@ -511,6 +519,7 @@
|
||||
"assets_trashed_count": "Trashed {count, plural, one {# asset} other {# assets}}",
|
||||
"assets_trashed_from_server": "{count} asset(s) trashed from the Immich server",
|
||||
"assets_were_part_of_album_count": "{count, plural, one {Asset was} other {Assets were}} already part of the album",
|
||||
"assets_were_part_of_albums_count": "{count, plural, one {Asset was} other {Assets were}} already part of the albums",
|
||||
"authorized_devices": "Authorized Devices",
|
||||
"automatic_endpoint_switching_subtitle": "Connect locally over designated Wi-Fi when available and use alternative connections elsewhere",
|
||||
"automatic_endpoint_switching_title": "Automatic URL switching",
|
||||
@@ -580,8 +589,10 @@
|
||||
"backup_manual_in_progress": "Upload already in progress. Try after sometime",
|
||||
"backup_manual_success": "Success",
|
||||
"backup_manual_title": "Upload status",
|
||||
"backup_options": "Backup Options",
|
||||
"backup_options_page_title": "Backup options",
|
||||
"backup_setting_subtitle": "Manage background and foreground upload settings",
|
||||
"backup_settings_subtitle": "Manage upload settings",
|
||||
"backward": "Backward",
|
||||
"beta_sync": "Beta Sync Status",
|
||||
"beta_sync_subtitle": "Manage the new sync system",
|
||||
@@ -651,6 +662,7 @@
|
||||
"clear": "Clear",
|
||||
"clear_all": "Clear all",
|
||||
"clear_all_recent_searches": "Clear all recent searches",
|
||||
"clear_file_cache": "Clear File Cache",
|
||||
"clear_message": "Clear message",
|
||||
"clear_value": "Clear value",
|
||||
"client_cert_dialog_msg_confirm": "OK",
|
||||
@@ -721,6 +733,7 @@
|
||||
"create_new_user": "Create new user",
|
||||
"create_shared_album_page_share_add_assets": "ADD ASSETS",
|
||||
"create_shared_album_page_share_select_photos": "Select Photos",
|
||||
"create_shared_link": "Create shared link",
|
||||
"create_tag": "Create tag",
|
||||
"create_tag_description": "Create a new tag. For nested tags, please enter the full path of the tag including forward slashes.",
|
||||
"create_user": "Create user",
|
||||
@@ -745,6 +758,7 @@
|
||||
"date_of_birth_saved": "Date of birth saved successfully",
|
||||
"date_range": "Date range",
|
||||
"day": "Day",
|
||||
"days": "Days",
|
||||
"deduplicate_all": "Deduplicate All",
|
||||
"deduplication_criteria_1": "Image size in bytes",
|
||||
"deduplication_criteria_2": "Count of EXIF data",
|
||||
@@ -829,9 +843,12 @@
|
||||
"edit": "Edit",
|
||||
"edit_album": "Edit album",
|
||||
"edit_avatar": "Edit avatar",
|
||||
"edit_birthday": "Edit Birthday",
|
||||
"edit_birthday": "Edit birthday",
|
||||
"edit_date": "Edit date",
|
||||
"edit_date_and_time": "Edit date and time",
|
||||
"edit_date_and_time_action_prompt": "{count} date and time edited",
|
||||
"edit_date_and_time_by_offset": "Change date by offset",
|
||||
"edit_date_and_time_by_offset_interval": "New date range: {from} - {to}",
|
||||
"edit_description": "Edit description",
|
||||
"edit_description_prompt": "Please select a new description:",
|
||||
"edit_exclusion_pattern": "Edit exclusion pattern",
|
||||
@@ -904,6 +921,7 @@
|
||||
"failed_to_load_notifications": "Failed to load notifications",
|
||||
"failed_to_load_people": "Failed to load people",
|
||||
"failed_to_remove_product_key": "Failed to remove product key",
|
||||
"failed_to_reset_pin_code": "Failed to reset PIN code",
|
||||
"failed_to_stack_assets": "Failed to stack assets",
|
||||
"failed_to_unstack_assets": "Failed to un-stack assets",
|
||||
"failed_to_update_notification_status": "Failed to update notification status",
|
||||
@@ -912,6 +930,7 @@
|
||||
"paths_validation_failed": "{paths, plural, one {# path} other {# paths}} failed validation",
|
||||
"profile_picture_transparent_pixels": "Profile pictures cannot have transparent pixels. Please zoom in and/or move the image.",
|
||||
"quota_higher_than_disk_size": "You set a quota higher than the disk size",
|
||||
"something_went_wrong": "Something went wrong",
|
||||
"unable_to_add_album_users": "Unable to add users to album",
|
||||
"unable_to_add_assets_to_shared_link": "Unable to add assets to shared link",
|
||||
"unable_to_add_comment": "Unable to add comment",
|
||||
@@ -1002,9 +1021,6 @@
|
||||
"exif_bottom_sheet_location": "LOCATION",
|
||||
"exif_bottom_sheet_people": "PEOPLE",
|
||||
"exif_bottom_sheet_person_add_person": "Add name",
|
||||
"exif_bottom_sheet_person_age_months": "Age {months} months",
|
||||
"exif_bottom_sheet_person_age_year_months": "Age 1 year, {months} months",
|
||||
"exif_bottom_sheet_person_age_years": "Age {years}",
|
||||
"exit_slideshow": "Exit Slideshow",
|
||||
"expand_all": "Expand all",
|
||||
"experimental_settings_new_asset_list_subtitle": "Work in progress",
|
||||
@@ -1046,11 +1062,13 @@
|
||||
"filter_people": "Filter people",
|
||||
"filter_places": "Filter places",
|
||||
"find_them_fast": "Find them fast by name with search",
|
||||
"first": "First",
|
||||
"fix_incorrect_match": "Fix incorrect match",
|
||||
"folder": "Folder",
|
||||
"folder_not_found": "Folder not found",
|
||||
"folders": "Folders",
|
||||
"folders_feature_description": "Browsing the folder view for the photos and videos on the file system",
|
||||
"forgot_pin_code_question": "Forgot your PIN?",
|
||||
"forward": "Forward",
|
||||
"gcast_enabled": "Google Cast",
|
||||
"gcast_enabled_description": "This feature loads external resources from Google in order to work.",
|
||||
@@ -1105,6 +1123,7 @@
|
||||
"home_page_upload_err_limit": "Can only upload a maximum of 30 assets at a time, skipping",
|
||||
"host": "Host",
|
||||
"hour": "Hour",
|
||||
"hours": "Hours",
|
||||
"id": "ID",
|
||||
"idle": "Idle",
|
||||
"ignore_icloud_photos": "Ignore iCloud photos",
|
||||
@@ -1165,10 +1184,12 @@
|
||||
"language_search_hint": "Search languages...",
|
||||
"language_setting_description": "Select your preferred language",
|
||||
"large_files": "Large Files",
|
||||
"last": "Last",
|
||||
"last_seen": "Last seen",
|
||||
"latest_version": "Latest Version",
|
||||
"latitude": "Latitude",
|
||||
"leave": "Leave",
|
||||
"leave_album": "Leave album",
|
||||
"lens_model": "Lens model",
|
||||
"let_others_respond": "Let others respond",
|
||||
"level": "Level",
|
||||
@@ -1182,6 +1203,7 @@
|
||||
"library_page_sort_title": "Album title",
|
||||
"licenses": "Licenses",
|
||||
"light": "Light",
|
||||
"like": "Like",
|
||||
"like_deleted": "Like deleted",
|
||||
"link_motion_video": "Link motion video",
|
||||
"link_to_oauth": "Link to OAuth",
|
||||
@@ -1248,7 +1270,7 @@
|
||||
"manage_your_devices": "Manage your logged-in devices",
|
||||
"manage_your_oauth_connection": "Manage your OAuth connection",
|
||||
"map": "Map",
|
||||
"map_assets_in_bounds": "{count, plural, one {# photo} other {# photos}}",
|
||||
"map_assets_in_bounds": "{count, plural, =0 {No photos in this area} one {# photo} other {# photos}}",
|
||||
"map_cannot_get_user_location": "Cannot get user's location",
|
||||
"map_location_dialog_yes": "Yes",
|
||||
"map_location_picker_page_use_location": "Use this location",
|
||||
@@ -1256,7 +1278,6 @@
|
||||
"map_location_service_disabled_title": "Location Service disabled",
|
||||
"map_marker_for_images": "Map marker for images taken in {city}, {country}",
|
||||
"map_marker_with_image": "Map marker with image",
|
||||
"map_no_assets_in_bounds": "No photos in this area",
|
||||
"map_no_location_permission_content": "Location permission is needed to display assets from your current location. Do you want to allow it now?",
|
||||
"map_no_location_permission_title": "Location Permission denied",
|
||||
"map_settings": "Map settings",
|
||||
@@ -1293,6 +1314,7 @@
|
||||
"merged_people_count": "Merged {count, plural, one {# person} other {# people}}",
|
||||
"minimize": "Minimize",
|
||||
"minute": "Minute",
|
||||
"minutes": "Minutes",
|
||||
"missing": "Missing",
|
||||
"model": "Model",
|
||||
"month": "Month",
|
||||
@@ -1312,6 +1334,9 @@
|
||||
"my_albums": "My albums",
|
||||
"name": "Name",
|
||||
"name_or_nickname": "Name or nickname",
|
||||
"network_requirement_photos_upload": "Use cellular data to backup photos",
|
||||
"network_requirement_videos_upload": "Use cellular data to backup videos",
|
||||
"network_requirements_updated": "Network requirements changed, resetting backup queue",
|
||||
"networking_settings": "Networking",
|
||||
"networking_subtitle": "Manage the server endpoint settings",
|
||||
"never": "Never",
|
||||
@@ -1363,6 +1388,7 @@
|
||||
"oauth": "OAuth",
|
||||
"official_immich_resources": "Official Immich Resources",
|
||||
"offline": "Offline",
|
||||
"offset": "Offset",
|
||||
"ok": "Ok",
|
||||
"oldest_first": "Oldest first",
|
||||
"on_this_device": "On this device",
|
||||
@@ -1440,6 +1466,9 @@
|
||||
"permission_onboarding_permission_limited": "Permission limited. To let Immich backup and manage your entire gallery collection, grant photo and video permissions in Settings.",
|
||||
"permission_onboarding_request": "Immich requires permission to view your photos and videos.",
|
||||
"person": "Person",
|
||||
"person_age_months": "{months, plural, one {# month} other {# months}} old",
|
||||
"person_age_year_months": "1 year, {months, plural, one {# month} other {# months}} old",
|
||||
"person_age_years": "{years, plural, other {# years}} old",
|
||||
"person_birthdate": "Born on {date}",
|
||||
"person_hidden": "{name}{hidden, select, true { (hidden)} other {}}",
|
||||
"photo_shared_all_users": "Looks like you shared your photos with all users or you don't have any user to share with.",
|
||||
@@ -1585,6 +1614,9 @@
|
||||
"reset_password": "Reset password",
|
||||
"reset_people_visibility": "Reset people visibility",
|
||||
"reset_pin_code": "Reset PIN code",
|
||||
"reset_pin_code_description": "If you forgot your PIN code, you can contact the server administrator to reset it",
|
||||
"reset_pin_code_success": "Successfully reset PIN code",
|
||||
"reset_pin_code_with_password": "You can always reset your PIN code with your password",
|
||||
"reset_sqlite": "Reset SQLite Database",
|
||||
"reset_sqlite_confirmation": "Are you sure you want to reset the SQLite database? You will need to log out and log in again to resync the data",
|
||||
"reset_sqlite_success": "Successfully reset the SQLite database",
|
||||
@@ -1833,6 +1865,7 @@
|
||||
"sort_created": "Date created",
|
||||
"sort_items": "Number of items",
|
||||
"sort_modified": "Date modified",
|
||||
"sort_newest": "Newest photo",
|
||||
"sort_oldest": "Oldest photo",
|
||||
"sort_people_by_similarity": "Sort people by similarity",
|
||||
"sort_recent": "Most recent photo",
|
||||
|
||||
329
i18n/es.json
76
i18n/et.json
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "Lisa asukoht",
|
||||
"add_a_name": "Lisa nimi",
|
||||
"add_a_title": "Lisa pealkiri",
|
||||
"add_birthday": "Lisa sünnipäev",
|
||||
"add_endpoint": "Lisa lõpp-punkt",
|
||||
"add_exclusion_pattern": "Lisa välistamismuster",
|
||||
"add_import_path": "Lisa imporditee",
|
||||
@@ -27,6 +28,9 @@
|
||||
"add_to_album": "Lisa albumisse",
|
||||
"add_to_album_bottom_sheet_added": "Lisatud albumisse {album}",
|
||||
"add_to_album_bottom_sheet_already_exists": "On juba albumis {album}",
|
||||
"add_to_album_toggle": "Muuda albumi {album} valikut",
|
||||
"add_to_albums": "Lisa albumitesse",
|
||||
"add_to_albums_count": "Lisa albumitesse ({count})",
|
||||
"add_to_shared_album": "Lisa jagatud albumisse",
|
||||
"add_url": "Lisa URL",
|
||||
"added_to_archive": "Lisatud arhiivi",
|
||||
@@ -44,6 +48,13 @@
|
||||
"backup_database": "Loo andmebaasi tõmmis",
|
||||
"backup_database_enable_description": "Luba andmebaasi tõmmised",
|
||||
"backup_keep_last_amount": "Eelmiste tõmmiste arv, mida alles hoida",
|
||||
"backup_onboarding_1_description": "asukohaväline koopia pilves või teises füüsilises asukohas.",
|
||||
"backup_onboarding_2_description": "lokaalset koopiat erinevatel seadmetel. See hõlmab põhifaile ja nende failide lokaalsed varundust.",
|
||||
"backup_onboarding_3_description": "koopiat su andmetest, kaasa arvatud originaalfailid. See hõlmab üht asukohavälist ja kaht lokaalset koopiat.",
|
||||
"backup_onboarding_description": "Andmete kaitsmiseks on soovituslik <backblaze-link>3-2-1 varundusstrateegia</backblaze-link>. Põhjaliku varunduse jaoks peaksid talletama koopiaid nii oma üleslaaditud fotodest ja videotest kui ka Immich'i andmebaasist.",
|
||||
"backup_onboarding_footer": "Rohkem informatsiooni Immich'i varundamise kohta leiad <link>dokumentatsioonist</link>.",
|
||||
"backup_onboarding_parts_title": "3-2-1 varundus hõlmab:",
|
||||
"backup_onboarding_title": "Varukoopiad",
|
||||
"backup_settings": "Andmebaasi tõmmiste seaded",
|
||||
"backup_settings_description": "Halda andmebaasi tõmmiste seadeid.",
|
||||
"cleared_jobs": "Tööted eemaldatud: {job}",
|
||||
@@ -347,6 +358,9 @@
|
||||
"trash_number_of_days_description": "Päevade arv, kui kaua hoida üksusi prügikastis enne nende lõplikku kustutamist",
|
||||
"trash_settings": "Prügikasti seaded",
|
||||
"trash_settings_description": "Halda prügikasti seadeid",
|
||||
"unlink_all_oauth_accounts": "Eemalda kõik OAuth kontod",
|
||||
"unlink_all_oauth_accounts_description": "Ära unusta enne teenusepakkuja vahetamist kõik OAuth kontod eemaldada.",
|
||||
"unlink_all_oauth_accounts_prompt": "Kas oled kindel, et soovid kõik OAuth kontod eemaldada? See lähtestab iga kasutaja OAuth ID ja seda tegevust ei saa tagasi võtta.",
|
||||
"user_cleanup_job": "Kasutajate korrastamine",
|
||||
"user_delete_delay": "Kasutaja <b>{user}</b> konto ja üksuste lõplik kustutamine on planeeritud {delay, plural, one {# päeva} other {# päeva}} pärast.",
|
||||
"user_delete_delay_settings": "Kustutamise viivitus",
|
||||
@@ -397,6 +411,7 @@
|
||||
"album_cover_updated": "Albumi kaanepilt muudetud",
|
||||
"album_delete_confirmation": "Kas oled kindel, et soovid albumi {album} kustutada?",
|
||||
"album_delete_confirmation_description": "Kui see album on jagatud, ei pääse teised kasutajad sellele enam ligi.",
|
||||
"album_deleted": "Album kustutatud",
|
||||
"album_info_card_backup_album_excluded": "VÄLJA JÄETUD",
|
||||
"album_info_card_backup_album_included": "LISATUD",
|
||||
"album_info_updated": "Albumi info muudetud",
|
||||
@@ -485,7 +500,9 @@
|
||||
"assets": "Üksused",
|
||||
"assets_added_count": "{count, plural, one {# üksus} other {# üksust}} lisatud",
|
||||
"assets_added_to_album_count": "{count, plural, one {# üksus} other {# üksust}} albumisse lisatud",
|
||||
"assets_added_to_albums_count": "{assetTotal, plural, one {# üksus} other {# üksust}} lisatud {albumTotal} albumisse",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {Üksust} other {Üksuseid}} ei saa albumisse lisada",
|
||||
"assets_cannot_be_added_to_albums": "{count, plural, one {Üksust} other {Üksuseid}} ei saa lisada ühtegi albumisse",
|
||||
"assets_count": "{count, plural, one {# üksus} other {# üksust}}",
|
||||
"assets_deleted_permanently": "{count} üksus(t) jäädavalt kustutatud",
|
||||
"assets_deleted_permanently_from_server": "{count} üksus(t) Immich'i serverist jäädavalt kustutatud",
|
||||
@@ -502,6 +519,7 @@
|
||||
"assets_trashed_count": "{count, plural, one {# üksus} other {# üksust}} liigutatud prügikasti",
|
||||
"assets_trashed_from_server": "{count} üksus(t) liigutatud Immich'i serveris prügikasti",
|
||||
"assets_were_part_of_album_count": "{count, plural, one {Üksus oli} other {Üksused olid}} juba osa albumist",
|
||||
"assets_were_part_of_albums_count": "{count, plural, one {Üksus oli} other {Üksused olid}} juba nendes albumites",
|
||||
"authorized_devices": "Autoriseeritud seadmed",
|
||||
"automatic_endpoint_switching_subtitle": "Ühendu lokaalselt üle valitud WiFi-võrgu, kui see on saadaval, ja kasuta mujal alternatiivseid ühendusi",
|
||||
"automatic_endpoint_switching_title": "Automaatne URL-i ümberlülitamine",
|
||||
@@ -510,6 +528,7 @@
|
||||
"back_close_deselect": "Tagasi, sulge või tühista valik",
|
||||
"background_location_permission": "Taustal asukoha luba",
|
||||
"background_location_permission_content": "Et taustal töötades võrguühendust vahetada, peab Immich'il *alati* olema täpse asukoha luba, et rakendus saaks WiFi-võrgu nime lugeda",
|
||||
"backup": "Varundamine",
|
||||
"backup_album_selection_page_albums_device": "Albumid seadmel ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Puuduta kaasamiseks, topeltpuuduta välistamiseks",
|
||||
"backup_album_selection_page_assets_scatter": "Üksused võivad olla jaotatud mitme albumi vahel. Seega saab albumeid varundamise protsessi kaasata või välistada.",
|
||||
@@ -570,8 +589,10 @@
|
||||
"backup_manual_in_progress": "Üleslaadimine juba käib. Proovi hiljem uuesti",
|
||||
"backup_manual_success": "Õnnestus",
|
||||
"backup_manual_title": "Üleslaadimise staatus",
|
||||
"backup_options": "Varunduse valikud",
|
||||
"backup_options_page_title": "Varundamise valikud",
|
||||
"backup_setting_subtitle": "Halda taustal ja esiplaanil üleslaadimise seadeid",
|
||||
"backup_settings_subtitle": "Halda üleslaadimise seadeid",
|
||||
"backward": "Tagasi",
|
||||
"beta_sync": "Beeta sünkroonimise staatus",
|
||||
"beta_sync_subtitle": "Halda uut sünkroonimissüsteemi",
|
||||
@@ -641,6 +662,7 @@
|
||||
"clear": "Tühjenda",
|
||||
"clear_all": "Tühjenda kõik",
|
||||
"clear_all_recent_searches": "Tühjenda hiljutised otsingud",
|
||||
"clear_file_cache": "Tühjenda failipuhver",
|
||||
"clear_message": "Tühjenda sõnum",
|
||||
"clear_value": "Tühjenda väärtus",
|
||||
"client_cert_dialog_msg_confirm": "OK",
|
||||
@@ -711,6 +733,7 @@
|
||||
"create_new_user": "Lisa uus kasutaja",
|
||||
"create_shared_album_page_share_add_assets": "LISA ÜKSUSEID",
|
||||
"create_shared_album_page_share_select_photos": "Vali fotod",
|
||||
"create_shared_link": "Loo jagatud link",
|
||||
"create_tag": "Lisa silt",
|
||||
"create_tag_description": "Lisa uus silt. Pesastatud siltide jaoks sisesta täielik tee koos kaldkriipsudega.",
|
||||
"create_user": "Lisa kasutaja",
|
||||
@@ -723,6 +746,7 @@
|
||||
"current_server_address": "Praegune serveri aadress",
|
||||
"custom_locale": "Kohandatud lokaat",
|
||||
"custom_locale_description": "Vorminda kuupäevad ja arvud vastavalt keelele ja regioonile",
|
||||
"custom_url": "Kohandatud URL",
|
||||
"daily_title_text_date": "d. MMMM",
|
||||
"daily_title_text_date_year": "d. MMMM yyyy",
|
||||
"dark": "Tume",
|
||||
@@ -734,6 +758,7 @@
|
||||
"date_of_birth_saved": "Sünnikuupäev salvestatud",
|
||||
"date_range": "Kuupäevavahemik",
|
||||
"day": "Päev",
|
||||
"days": "Päeva",
|
||||
"deduplicate_all": "Dedubleeri kõik",
|
||||
"deduplication_criteria_1": "Pildi suurus baitides",
|
||||
"deduplication_criteria_2": "EXIF andmete hulk",
|
||||
@@ -742,7 +767,8 @@
|
||||
"default_locale": "Vaikimisi lokaat",
|
||||
"default_locale_description": "Vorminda kuupäevad ja numbrid vastavalt brauseri lokaadile",
|
||||
"delete": "Kustuta",
|
||||
"delete_action_prompt": "{count} jäädavalt kustutatud",
|
||||
"delete_action_confirmation_message": "Kas oled kindel, et soovid selle üksuse kustutada? See toiming liigutab üksuse serveri prügikasti ja küsib, kas soovid selle lokaalselt kustutada",
|
||||
"delete_action_prompt": "{count} kustutatud",
|
||||
"delete_album": "Kustuta album",
|
||||
"delete_api_key_prompt": "Kas oled kindel, et soovid selle API võtme kustutada?",
|
||||
"delete_dialog_alert": "Need üksused kustutatakse jäädavalt Immich'ist ja sinu seadmest",
|
||||
@@ -760,6 +786,8 @@
|
||||
"delete_local_dialog_ok_backed_up_only": "Kustuta ainult varundatud",
|
||||
"delete_local_dialog_ok_force": "Kustuta sellegipoolest",
|
||||
"delete_others": "Kustuta teised",
|
||||
"delete_permanently": "Kustuta jäädavalt",
|
||||
"delete_permanently_action_prompt": "{count} jäädavalt kustutatud",
|
||||
"delete_shared_link": "Kustuta jagatud link",
|
||||
"delete_shared_link_dialog_title": "Kustuta jagatud link",
|
||||
"delete_tag": "Kustuta silt",
|
||||
@@ -815,8 +843,12 @@
|
||||
"edit": "Muuda",
|
||||
"edit_album": "Muuda albumit",
|
||||
"edit_avatar": "Muuda avatari",
|
||||
"edit_birthday": "Muuda sünnipäeva",
|
||||
"edit_date": "Muuda kuupäeva",
|
||||
"edit_date_and_time": "Muuda kuupäeva ja kellaaega",
|
||||
"edit_date_and_time_action_prompt": "{count} päev ja kellaaeg muudetud",
|
||||
"edit_date_and_time_by_offset": "Nihuta kuupäeva",
|
||||
"edit_date_and_time_by_offset_interval": "Uus kuupäevavahemik: {from} - {to}",
|
||||
"edit_description": "Muuda kirjeldust",
|
||||
"edit_description_prompt": "Palun vali uus kirjeldus:",
|
||||
"edit_exclusion_pattern": "Muuda välistamismustrit",
|
||||
@@ -889,6 +921,7 @@
|
||||
"failed_to_load_notifications": "Teavituste laadimine ebaõnnestus",
|
||||
"failed_to_load_people": "Isikute laadimine ebaõnnestus",
|
||||
"failed_to_remove_product_key": "Tootevõtme eemaldamine ebaõnnestus",
|
||||
"failed_to_reset_pin_code": "PIN-koodi lähestamine ebaõnnestus",
|
||||
"failed_to_stack_assets": "Üksuste virnastamine ebaõnnestus",
|
||||
"failed_to_unstack_assets": "Üksuste eraldamine ebaõnnestus",
|
||||
"failed_to_update_notification_status": "Teavituste seisundi uuendamine ebaõnnestus",
|
||||
@@ -897,6 +930,7 @@
|
||||
"paths_validation_failed": "{paths, plural, one {# tee} other {# teed}} ei valideerunud",
|
||||
"profile_picture_transparent_pixels": "Profiilipildis ei tohi olla läbipaistvaid piksleid. Palun suumi sisse ja/või liiguta pilti.",
|
||||
"quota_higher_than_disk_size": "Määratud kvoot on suurem kui kettamaht",
|
||||
"something_went_wrong": "Midagi läks valesti",
|
||||
"unable_to_add_album_users": "Kasutajate lisamine albumisse ebaõnnestus",
|
||||
"unable_to_add_assets_to_shared_link": "Üksuste jagatud lingile lisamine ebaõnnestus",
|
||||
"unable_to_add_comment": "Kommentaari lisamine ebaõnnestus",
|
||||
@@ -982,13 +1016,11 @@
|
||||
},
|
||||
"exif": "Exif",
|
||||
"exif_bottom_sheet_description": "Lisa kirjeldus...",
|
||||
"exif_bottom_sheet_description_error": "Viga kirjelduse muutmisel",
|
||||
"exif_bottom_sheet_details": "ÜKSIKASJAD",
|
||||
"exif_bottom_sheet_location": "ASUKOHT",
|
||||
"exif_bottom_sheet_people": "ISIKUD",
|
||||
"exif_bottom_sheet_person_add_person": "Lisa nimi",
|
||||
"exif_bottom_sheet_person_age_months": "Vanus {months} kuud",
|
||||
"exif_bottom_sheet_person_age_year_months": "Vanus 1 aasta, {months} kuud",
|
||||
"exif_bottom_sheet_person_age_years": "Vanus {years}",
|
||||
"exit_slideshow": "Sulge slaidiesitlus",
|
||||
"expand_all": "Näita kõik",
|
||||
"experimental_settings_new_asset_list_subtitle": "Töös",
|
||||
@@ -1002,6 +1034,8 @@
|
||||
"explorer": "Brauser",
|
||||
"export": "Ekspordi",
|
||||
"export_as_json": "Ekspordi JSON-formaati",
|
||||
"export_database": "Ekspordi andmebaas",
|
||||
"export_database_description": "Ekspordi SQLite andmebaas",
|
||||
"extension": "Laiend",
|
||||
"external": "Väline",
|
||||
"external_libraries": "Välised kogud",
|
||||
@@ -1028,11 +1062,13 @@
|
||||
"filter_people": "Filtreeri isikuid",
|
||||
"filter_places": "Filtreeri kohti",
|
||||
"find_them_fast": "Leia teda kiiresti nime järgi otsides",
|
||||
"first": "Esimene",
|
||||
"fix_incorrect_match": "Paranda ebaõige vaste",
|
||||
"folder": "Kaust",
|
||||
"folder_not_found": "Kausta ei leitud",
|
||||
"folders": "Kaustad",
|
||||
"folders_feature_description": "Kaustavaate abil failisüsteemis olevate fotode ja videote sirvimine",
|
||||
"forgot_pin_code_question": "Unustasid oma PIN-koodi?",
|
||||
"forward": "Edasi",
|
||||
"gcast_enabled": "Google Cast",
|
||||
"gcast_enabled_description": "See funktsionaalsus laadib töötamiseks Google'st väliseid ressursse.",
|
||||
@@ -1087,6 +1123,7 @@
|
||||
"home_page_upload_err_limit": "Korraga saab üles laadida ainult 30 üksust, jäetakse vahele",
|
||||
"host": "Host",
|
||||
"hour": "Tund",
|
||||
"hours": "Tundi",
|
||||
"id": "ID",
|
||||
"idle": "Jõude",
|
||||
"ignore_icloud_photos": "Ignoreeri iCloud fotosid",
|
||||
@@ -1146,10 +1183,13 @@
|
||||
"language_no_results_title": "Ühtegi keelt ei leitud",
|
||||
"language_search_hint": "Otsi keeli...",
|
||||
"language_setting_description": "Vali oma eelistatud keel",
|
||||
"large_files": "Suured failid",
|
||||
"last": "Viimane",
|
||||
"last_seen": "Viimati nähtud",
|
||||
"latest_version": "Uusim versioon",
|
||||
"latitude": "Laiuskraad",
|
||||
"leave": "Lahku",
|
||||
"leave_album": "Lahku albumist",
|
||||
"lens_model": "Läätse mudel",
|
||||
"let_others_respond": "Luba teistel vastata",
|
||||
"level": "Tase",
|
||||
@@ -1163,15 +1203,15 @@
|
||||
"library_page_sort_title": "Albumi pealkiri",
|
||||
"licenses": "Litsentsid",
|
||||
"light": "Hele",
|
||||
"like": "Meeldib",
|
||||
"like_deleted": "Meeldimine kustutatud",
|
||||
"link_motion_video": "Lingi liikuv video",
|
||||
"link_options": "Lingi valikud",
|
||||
"link_to_oauth": "Ühenda OAuth",
|
||||
"linked_oauth_account": "OAuth konto ühendatud",
|
||||
"list": "Loend",
|
||||
"loading": "Laadimine",
|
||||
"loading_search_results_failed": "Otsitulemuste laadimine ebaõnnestus",
|
||||
"local": "Lokaalne üksus",
|
||||
"local": "Lokaalsed",
|
||||
"local_asset_cast_failed": "Ei saa edastada üksust, mis pole serverisse üles laaditud",
|
||||
"local_assets": "Lokaalsed üksused",
|
||||
"local_network": "Kohalik võrk",
|
||||
@@ -1230,8 +1270,7 @@
|
||||
"manage_your_devices": "Halda oma autenditud seadmeid",
|
||||
"manage_your_oauth_connection": "Halda oma OAuth ühendust",
|
||||
"map": "Kaart",
|
||||
"map_assets_in_bound": "{count} foto",
|
||||
"map_assets_in_bounds": "{count} fotot",
|
||||
"map_assets_in_bounds": "{count, plural, =0 {Selles piirkonnas fotosid pole} one {# foto} other {# fotot}}",
|
||||
"map_cannot_get_user_location": "Ei saa kasutaja asukohta tuvastada",
|
||||
"map_location_dialog_yes": "Jah",
|
||||
"map_location_picker_page_use_location": "Kasuta seda asukohta",
|
||||
@@ -1239,7 +1278,6 @@
|
||||
"map_location_service_disabled_title": "Asukoha teenus keelatud",
|
||||
"map_marker_for_images": "Kaardimarker kohas {city}, {country} tehtud piltide jaoks",
|
||||
"map_marker_with_image": "Kaardimarker pildiga",
|
||||
"map_no_assets_in_bounds": "Selles piirkonnas ei ole fotosid",
|
||||
"map_no_location_permission_content": "Praeguse asukoha üksuste kuvamiseks on vaja asukoha luba. Kas soovid seda praegu lubada?",
|
||||
"map_no_location_permission_title": "Asukoha luba keelatud",
|
||||
"map_settings": "Kaardi seaded",
|
||||
@@ -1276,6 +1314,7 @@
|
||||
"merged_people_count": "Ühendatud {count, plural, one {# isik} other {# isikut}}",
|
||||
"minimize": "Minimeeri",
|
||||
"minute": "Minut",
|
||||
"minutes": "Minutit",
|
||||
"missing": "Puuduvad",
|
||||
"model": "Mudel",
|
||||
"month": "Kuu",
|
||||
@@ -1295,6 +1334,9 @@
|
||||
"my_albums": "Minu albumid",
|
||||
"name": "Nimi",
|
||||
"name_or_nickname": "Nimi või hüüdnimi",
|
||||
"network_requirement_photos_upload": "Kasuta fotode varundamiseks mobiilset andmesidet",
|
||||
"network_requirement_videos_upload": "Kasuta videote varundamiseks mobiilset andmesidet",
|
||||
"network_requirements_updated": "Võrgu nõuded muutusid, varundamise järjekord lähtestatakse",
|
||||
"networking_settings": "Võrguühendus",
|
||||
"networking_subtitle": "Halda serveri lõpp-punkti seadeid",
|
||||
"never": "Mitte kunagi",
|
||||
@@ -1346,6 +1388,7 @@
|
||||
"oauth": "OAuth",
|
||||
"official_immich_resources": "Ametlikud Immich'i ressursid",
|
||||
"offline": "Ühendus puudub",
|
||||
"offset": "Nihe",
|
||||
"ok": "OK",
|
||||
"oldest_first": "Vanemad eespool",
|
||||
"on_this_device": "Sellel seadmel",
|
||||
@@ -1423,6 +1466,9 @@
|
||||
"permission_onboarding_permission_limited": "Piiratud luba. Et Immich saaks tervet su galeriid varundada ja hallata, anna Seadetes luba fotodele ja videotele.",
|
||||
"permission_onboarding_request": "Immich'il on vaja luba su fotode ja videote vaatamiseks.",
|
||||
"person": "Isik",
|
||||
"person_age_months": "{months, plural, one {# kuu} other {# kuud}} vana",
|
||||
"person_age_year_months": "1 aasta {months, plural, one {# kuu} other {# kuud}} vana",
|
||||
"person_age_years": "{years, plural, other {# aastat}} vana",
|
||||
"person_birthdate": "Sündinud {date}",
|
||||
"person_hidden": "{name}{hidden, select, true { (peidetud)} other {}}",
|
||||
"photo_shared_all_users": "Paistab, et oled oma fotosid kõigi kasutajatega jaganud, või pole ühtegi kasutajat, kellega jagada.",
|
||||
@@ -1529,7 +1575,7 @@
|
||||
"refreshing_faces": "Nägude värskendamine",
|
||||
"refreshing_metadata": "Metaandmete värskendamine",
|
||||
"regenerating_thumbnails": "Pisipiltide uuesti genereerimine",
|
||||
"remote": "Kaugüksus",
|
||||
"remote": "Serveris",
|
||||
"remote_assets": "Kaugüksused",
|
||||
"remove": "Eemalda",
|
||||
"remove_assets_album_confirmation": "Kas oled kindel, et soovid {count, plural, one {# üksuse} other {# üksust}} albumist eemaldada?",
|
||||
@@ -1568,6 +1614,9 @@
|
||||
"reset_password": "Lähtesta parool",
|
||||
"reset_people_visibility": "Lähtesta isikute nähtavus",
|
||||
"reset_pin_code": "Lähtesta PIN-kood",
|
||||
"reset_pin_code_description": "Kui unustasid oma PIN-koodi, võta selle lähtestamiseks ühendust serveri administraatoriga",
|
||||
"reset_pin_code_success": "PIN-kood edukalt lähtestatud",
|
||||
"reset_pin_code_with_password": "Saad oma PIN-koodi alati oma parooli abil lähtestada",
|
||||
"reset_sqlite": "Lähtesta SQLite andmebaas",
|
||||
"reset_sqlite_confirmation": "Kas oled kindel, et soovid SQLite andmebaasi lähtestada? Andmete uuesti sünkroonimiseks pead välja ja jälle sisse logima",
|
||||
"reset_sqlite_success": "SQLite andmebaas edukalt lähtestatud",
|
||||
@@ -1582,6 +1631,7 @@
|
||||
"resume": "Jätka",
|
||||
"retry_upload": "Proovi üleslaadimist uuesti",
|
||||
"review_duplicates": "Vaata duplikaadid läbi",
|
||||
"review_large_files": "Vaata suured failid läbi",
|
||||
"role": "Roll",
|
||||
"role_editor": "Muutja",
|
||||
"role_viewer": "Vaataja",
|
||||
@@ -1739,6 +1789,7 @@
|
||||
"shared_link_clipboard_copied_massage": "Kopeeritud lõikelauale",
|
||||
"shared_link_clipboard_text": "Link: {link}\nParool: {password}",
|
||||
"shared_link_create_error": "Viga jagatud lingi loomisel",
|
||||
"shared_link_custom_url_description": "Ligipääs jagatud lingile kohandatud URL-i kaudu",
|
||||
"shared_link_edit_description_hint": "Sisesta jagatud lingi kirjeldus",
|
||||
"shared_link_edit_expire_after_option_day": "1 päev",
|
||||
"shared_link_edit_expire_after_option_days": "{count} päeva",
|
||||
@@ -1764,6 +1815,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "Halda jagatud linke",
|
||||
"shared_link_options": "Jagatud lingi valikud",
|
||||
"shared_link_password_description": "Nõua jagatud lingile ligi pääsemiseks parooli",
|
||||
"shared_links": "Jagatud lingid",
|
||||
"shared_links_description": "Jaga fotosid ja videosid lingiga",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, other {# jagatud fotot ja videot.}}",
|
||||
@@ -1813,6 +1865,7 @@
|
||||
"sort_created": "Loomise aeg",
|
||||
"sort_items": "Üksuste arv",
|
||||
"sort_modified": "Muutmise aeg",
|
||||
"sort_newest": "Uusim foto",
|
||||
"sort_oldest": "Vanim foto",
|
||||
"sort_people_by_similarity": "Sorteeri isikud sarnasuse järgi",
|
||||
"sort_recent": "Uusim foto",
|
||||
@@ -1941,11 +1994,13 @@
|
||||
"updated_at": "Uuendatud",
|
||||
"updated_password": "Parool muudetud",
|
||||
"upload": "Laadi üles",
|
||||
"upload_action_prompt": "{count} üleslaadimise ootel",
|
||||
"upload_concurrency": "Üleslaadimise samaaegsus",
|
||||
"upload_details": "Üleslaadimise üksikasjad",
|
||||
"upload_dialog_info": "Kas soovid valitud üksuse(d) serverisse varundada?",
|
||||
"upload_dialog_title": "Üksuse üleslaadimine",
|
||||
"upload_errors": "Üleslaadimine lõpetatud {count, plural, one {# veaga} other {# veaga}}, uute üksuste nägemiseks värskenda lehte.",
|
||||
"upload_finished": "Üleslaadimine lõpetatud",
|
||||
"upload_progress": "Ootel {remaining, number} - Töödeldud {processed, number}/{total, number}",
|
||||
"upload_skipped_duplicates": "{count, plural, one {# dubleeritud üksus} other {# dubleeritud üksust}} vahele jäetud",
|
||||
"upload_status_duplicates": "Duplikaadid",
|
||||
@@ -1954,6 +2009,7 @@
|
||||
"upload_success": "Üleslaadimine õnnestus, uute üksuste nägemiseks värskenda lehte.",
|
||||
"upload_to_immich": "Laadi Immich'isse ({count})",
|
||||
"uploading": "Üleslaadimine",
|
||||
"uploading_media": "Meediumi üleslaadimine",
|
||||
"url": "URL",
|
||||
"usage": "Kasutus",
|
||||
"use_biometric": "Kasuta biomeetriat",
|
||||
|
||||
28
i18n/eu.json
@@ -1,17 +1,43 @@
|
||||
{
|
||||
"active": "Martxan",
|
||||
"about": "Honi buruz",
|
||||
"account": "Kontua",
|
||||
"account_settings": "Kontuaren Ezarpenak",
|
||||
"acknowledge": "Onartu",
|
||||
"action": "Ekintza",
|
||||
"action_common_update": "Eguneratu",
|
||||
"actions": "Ekintzak",
|
||||
"active": "Aktibo",
|
||||
"activity": "Jarduera",
|
||||
"activity_changed": "Jarduera {enabled, select, true {ezarrita dago} other {ez dago ezarrita}}",
|
||||
"add": "Gehitu",
|
||||
"add_a_description": "Azalpena gehitu",
|
||||
"add_a_location": "Kokapena gehitu",
|
||||
"add_a_name": "Izena gehitu",
|
||||
"add_a_title": "Izenburua gehitu",
|
||||
"add_birthday": "Urtebetetzea gehitu",
|
||||
"add_endpoint": "Endpoint-a gehitu",
|
||||
"add_exclusion_pattern": "Bazterketa eredua gehitu",
|
||||
"add_import_path": "Inportazio bidea gehitu",
|
||||
"add_location": "Kokapena gehitu",
|
||||
"add_more_users": "Erabiltzaile gehiago gehitu",
|
||||
"add_partner": "Kidea gehitu",
|
||||
"add_path": "Bidea gehitu",
|
||||
"add_photos": "Argazkiak gehitu",
|
||||
"add_tag": "Etiketa gehitu",
|
||||
"add_to": "Hona gehitu…",
|
||||
"add_to_album": "Albumera gehitu",
|
||||
"add_to_album_bottom_sheet_added": "{album} -(e)ra gehitu",
|
||||
"add_to_album_bottom_sheet_already_exists": "Dagoeneko {album} albumenean",
|
||||
"add_to_albums": "Albumetara gehitu",
|
||||
"add_to_albums_count": "Albumetara gehitu ({count})",
|
||||
"add_to_shared_album": "Gehitu partekatutako albumera",
|
||||
"add_url": "URL-a gehitu",
|
||||
"added_to_archive": "Artxibategira gehituta",
|
||||
"added_to_favorites": "Faboritoetara gehituta",
|
||||
"added_to_favorites_count": "{count, number} faboritoetara gehituta",
|
||||
"admin": {
|
||||
"add_exclusion_pattern_description": "Gehitu baztertze patroiak. *, ** eta ? karakterak erabil ditzazkezu (globbing). Adibideak: \"Raw\" izeneko edozein direktorioko fitxategi guztiak baztertzeko, erabili \"**/Raw/**\". \".tif\" amaitzen diren fitxategi guztiak baztertzeko, erabili \"**/*.tif\". Bide absolutu bat baztertzeko, erabili \"/baztertu/beharreko/bidea/**\".",
|
||||
"admin_user": "Administradore erabiltzailea",
|
||||
"image_quality": "Kalitatea"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -471,7 +471,6 @@
|
||||
"library": "کتابخانه",
|
||||
"library_options": "گزینههای کتابخانه",
|
||||
"light": "روشن",
|
||||
"link_options": "گزینههای لینک",
|
||||
"link_to_oauth": "اتصال به OAuth",
|
||||
"linked_oauth_account": "حساب OAuth متصل شده",
|
||||
"list": "لیست",
|
||||
@@ -493,7 +492,6 @@
|
||||
"manage_your_devices": "مدیریت دستگاههای متصل",
|
||||
"manage_your_oauth_connection": "مدیریت اتصال OAuth",
|
||||
"map": "نقشه",
|
||||
"map_assets_in_bound": "{count} عکس",
|
||||
"map_assets_in_bounds": "{count} عکس ها",
|
||||
"map_cannot_get_user_location": "موقعیت مکانی در دسترس نیست",
|
||||
"map_location_dialog_yes": "بله",
|
||||
@@ -502,7 +500,6 @@
|
||||
"map_location_service_disabled_title": "سرویس مکانیابی غیرفعال است",
|
||||
"map_marker_for_images": "نشانگر روی نقشه برای عکسهای گرفتهشده در {city}, {country}",
|
||||
"map_marker_with_image": "علامتگذاری نقشه با عکس",
|
||||
"map_no_assets_in_bounds": "هیچ عکسی در این محدوده نیست",
|
||||
"map_no_location_permission_content": "برای نمایش عکسهای اطرافتان، برنامه نیاز به دسترسی به موقعیت مکانی دارد. اجازه دسترسی میدهید؟",
|
||||
"map_no_location_permission_title": "دسترسی به موقعیت شما فعال نیست",
|
||||
"map_settings": "تنظیمات نقشه",
|
||||
|
||||
108
i18n/fi.json
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "Lisää sijainti",
|
||||
"add_a_name": "Lisää nimi",
|
||||
"add_a_title": "Lisää otsikko",
|
||||
"add_birthday": "Lisää syntymäpäivä",
|
||||
"add_endpoint": "Lisää päätepiste",
|
||||
"add_exclusion_pattern": "Lisää poissulkemismalli",
|
||||
"add_import_path": "Lisää tuontipolku",
|
||||
@@ -27,6 +28,8 @@
|
||||
"add_to_album": "Lisää albumiin",
|
||||
"add_to_album_bottom_sheet_added": "Lisätty albumiin {album}",
|
||||
"add_to_album_bottom_sheet_already_exists": "Kohde on jo albumissa {album}",
|
||||
"add_to_albums": "Lisää albumeihin",
|
||||
"add_to_albums_count": "Lisää albumeihin ({count})",
|
||||
"add_to_shared_album": "Lisää jaettuun albumiin",
|
||||
"add_url": "Lisää URL",
|
||||
"added_to_archive": "Lisätty arkistoon",
|
||||
@@ -44,6 +47,13 @@
|
||||
"backup_database": "Luo tietokantavedos",
|
||||
"backup_database_enable_description": "Ota tietokantavedokset käyttöön",
|
||||
"backup_keep_last_amount": "Säilytettävien tietokantavedosten määrä",
|
||||
"backup_onboarding_1_description": "Kopio pilvipalvelussa tai toisessa fyysisessä sijainnissa.",
|
||||
"backup_onboarding_2_description": "Paikalliset kopiot eri laitteilla. Tämä sisältää sekä alkuperäiset tiedostot että niiden varmuuskopiot paikallisesti.",
|
||||
"backup_onboarding_3_description": "Kopiot tiedoistasi, mukaan lukien alkuperäiset tiedostot. Tähän sisältyy yksi etäsijainnissa oleva kopio ja kaksi paikallista kopiota.",
|
||||
"backup_onboarding_description": "Suosittelemme <backblaze-link>3-2-1-varmuuskopiointistrategiaa</backblaze-link> tietojesi suojaamiseksi. Säilytä kopiot sekä ladatuista valokuvista ja videoista että Immichin tietokannasta kattavaa varmuuskopiointiratkaisua varten.",
|
||||
"backup_onboarding_footer": "Lisätietoja Immich varmuuskopioinnista löydät <link>dokumentaatiosta</link>.",
|
||||
"backup_onboarding_parts_title": "3-2-1-varmuuskopio sisältää:",
|
||||
"backup_onboarding_title": "Varmuuskopiot",
|
||||
"backup_settings": "Tietokantavedosten asetukset",
|
||||
"backup_settings_description": "Hallitse tietokannan vedosasetuksia.",
|
||||
"cleared_jobs": "Työn {job} tehtävät tyhjennetty",
|
||||
@@ -347,6 +357,9 @@
|
||||
"trash_number_of_days_description": "Kuinka monta päivää aineistoja pidetään roskakorissa ennen pysyvää poistamista",
|
||||
"trash_settings": "Roskakorin asetukset",
|
||||
"trash_settings_description": "Hallitse roskakoriasetuksia",
|
||||
"unlink_all_oauth_accounts": "Irrota kaikki OAuth-tilit",
|
||||
"unlink_all_oauth_accounts_description": "Muista irrottaa kaikki OAuth-tilit ennen uuteen palveluntarjoajaan siirtymistä.",
|
||||
"unlink_all_oauth_accounts_prompt": "Haluatko varmasti irrottaa kaikki OAuth-tilit? Tämä nollaa OAuth-tunnistautumisen kaikille käyttäjille eikä sitä voi perua.",
|
||||
"user_cleanup_job": "Käyttäjien puhdistus",
|
||||
"user_delete_delay": "Käyttäjän <b>{user}</b> tili ja aineistot aikataulutetaan poistettavaksi ajan kuluttua: {delay, plural, one {# day} other {# days}}.",
|
||||
"user_delete_delay_settings": "Poiston viive",
|
||||
@@ -373,10 +386,12 @@
|
||||
"admin_password": "Ylläpitäjän salasana",
|
||||
"administration": "Ylläpito",
|
||||
"advanced": "Edistyneet",
|
||||
"advanced_settings_beta_timeline_subtitle": "Kokeile uutta sovelluskokemusta",
|
||||
"advanced_settings_beta_timeline_title": "Beta-aikajana",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "Käytä tätä vaihtoehtoa suodattaaksesi mediaa synkronoinnin aikana vaihtoehtoisten kriteerien perusteella. Kokeile tätä vain, jos sovelluksessa on ongelmia kaikkien albumien tunnistamisessa.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[KOKEELLINEN] Käytä vaihtoehtoisen laitteen albumin synkronointisuodatinta",
|
||||
"advanced_settings_log_level_title": "Kirjaustaso: {level}",
|
||||
"advanced_settings_prefer_remote_subtitle": "Jotkut laitteet ovat erittäin hitaita lataamaan esikatselukuvia laitteen kohteista. Aktivoi tämä asetus käyttääksesi etäkuvia.",
|
||||
"advanced_settings_prefer_remote_subtitle": "Jotkut laitteet ovat erittäin hitaita lataamaan esikatselukuvia paikallisista kohteista. Aktivoi tämä asetus käyttääksesi etäkuvia.",
|
||||
"advanced_settings_prefer_remote_title": "Suosi etäkuvia",
|
||||
"advanced_settings_proxy_headers_subtitle": "Määritä välityspalvelimen otsikot(proxy headers), jotka Immichin tulisi lähettää jokaisen verkkopyynnön mukana",
|
||||
"advanced_settings_proxy_headers_title": "Välityspalvelimen otsikot",
|
||||
@@ -395,6 +410,7 @@
|
||||
"album_cover_updated": "Albumin kansikuva päivitetty",
|
||||
"album_delete_confirmation": "Haluatko varmasti poistaa albumin {album}?",
|
||||
"album_delete_confirmation_description": "Jos albumi on jaettu, muut eivät pääse siihen enää.",
|
||||
"album_deleted": "Albumi poistettu",
|
||||
"album_info_card_backup_album_excluded": "JÄTETTY POIS",
|
||||
"album_info_card_backup_album_included": "SISÄLLYTETTY",
|
||||
"album_info_updated": "Albumin tiedot päivitetty",
|
||||
@@ -404,6 +420,7 @@
|
||||
"album_options": "Albumin asetukset",
|
||||
"album_remove_user": "Poista käyttäjä?",
|
||||
"album_remove_user_confirmation": "Oletko varma että haluat poistaa {user}?",
|
||||
"album_search_not_found": "Haullasi ei löytynyt yhtään albumia",
|
||||
"album_share_no_users": "Näyttää että olet jakanut tämän albumin kaikkien kanssa, tai sinulla ei ole käyttäjiä joille jakaa.",
|
||||
"album_updated": "Albumi päivitetty",
|
||||
"album_updated_setting_description": "Saa sähköpostia kun jaetussa albumissa on uutta sisältöä",
|
||||
@@ -423,6 +440,7 @@
|
||||
"albums_default_sort_order": "Albumin oletuslajittelujärjestys",
|
||||
"albums_default_sort_order_description": "Kohteiden ensisijainen lajittelujärjestys uusia albumeja luotaessa.",
|
||||
"albums_feature_description": "Kokoelma kohteita, jotka voidaan jakaa muille käyttäjille.",
|
||||
"albums_on_device_count": "({count}) albumia laitteella",
|
||||
"all": "Kaikki",
|
||||
"all_albums": "Kaikki albumit",
|
||||
"all_people": "Kaikki henkilöt",
|
||||
@@ -506,6 +524,7 @@
|
||||
"back_close_deselect": "Palaa, sulje tai poista valinnat",
|
||||
"background_location_permission": "Taustasijainnin käyttöoikeus",
|
||||
"background_location_permission_content": "Jotta sovellus voi vaihtaa verkkoa taustalla toimiessaan, Immichillä on *aina* oltava pääsy tarkkaan sijaintiin, jotta se voi lukea Wi-Fi-verkon nimen",
|
||||
"backup": "Varmuuskopiointi",
|
||||
"backup_album_selection_page_albums_device": "Laitteen albumit ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Napauta sisällyttääksesi, kaksoisnapauta jättääksesi pois",
|
||||
"backup_album_selection_page_assets_scatter": "Kohteet voivat olla hajaantuneina useisiin albumeihin. Albumeita voidaan sisällyttää varmuuskopiointiin tai jättää siitä pois.",
|
||||
@@ -566,9 +585,13 @@
|
||||
"backup_manual_in_progress": "Lähetys palvelimelle on jo käynnissä. Kokeile myöhemmin uudelleen",
|
||||
"backup_manual_success": "Onnistui",
|
||||
"backup_manual_title": "Lähetyksen tila",
|
||||
"backup_options": "Varmuuskopiointiasetukset",
|
||||
"backup_options_page_title": "Varmuuskopioinnin asetukset",
|
||||
"backup_setting_subtitle": "Hallinnoi aktiivisia ja taustalla olevia lähetysasetuksia",
|
||||
"backup_settings_subtitle": "Hallitse lähetysasetuksia",
|
||||
"backward": "Taaksepäin",
|
||||
"beta_sync": "Betasynkronoinnin tila",
|
||||
"beta_sync_subtitle": "Hallitse uutta synkronointijärjestelmää",
|
||||
"biometric_auth_enabled": "Biometrinen tunnistautuminen käytössä",
|
||||
"biometric_locked_out": "Sinulta on evätty pääsy biometriseen tunnistautumiseen",
|
||||
"biometric_no_options": "Ei biometrisiä vaihtoehtoja",
|
||||
@@ -586,7 +609,7 @@
|
||||
"cache_settings_clear_cache_button": "Tyhjennä välimuisti",
|
||||
"cache_settings_clear_cache_button_title": "Tyhjennä sovelluksen välimuisti. Tämä vaikuttaa merkittävästi sovelluksen suorituskykyyn, kunnes välimuisti on rakennettu uudelleen.",
|
||||
"cache_settings_duplicated_assets_clear_button": "Tyhjennä",
|
||||
"cache_settings_duplicated_assets_subtitle": "Sovelluksen mustalle listalle merkitsemät valokuvat ja videot",
|
||||
"cache_settings_duplicated_assets_subtitle": "Sovelluksen sivuutettavaksi merkitsemät valokuvat ja videot",
|
||||
"cache_settings_duplicated_assets_title": "Kaksoiskappaleet ({count})",
|
||||
"cache_settings_statistics_album": "Kirjaston esikatselukuvat",
|
||||
"cache_settings_statistics_full": "Täysikokoiset kuvat",
|
||||
@@ -603,6 +626,7 @@
|
||||
"cancel": "Peruuta",
|
||||
"cancel_search": "Peru haku",
|
||||
"canceled": "Peruutettu",
|
||||
"canceling": "Peruutetaan",
|
||||
"cannot_merge_people": "Ihmisiä ei voitu yhdistää",
|
||||
"cannot_undo_this_action": "Et voi perua tätä toimintoa!",
|
||||
"cannot_update_the_description": "Kuvausta ei voi päivittää",
|
||||
@@ -634,6 +658,7 @@
|
||||
"clear": "Tyhjennä",
|
||||
"clear_all": "Tyhjennä kaikki",
|
||||
"clear_all_recent_searches": "Tyhjennä viimeisimmät haut",
|
||||
"clear_file_cache": "Tyhjennä tiedostovälimuisti",
|
||||
"clear_message": "Tyhjennä viesti",
|
||||
"clear_value": "Tyhjää arvo",
|
||||
"client_cert_dialog_msg_confirm": "OK",
|
||||
@@ -704,6 +729,7 @@
|
||||
"create_new_user": "Luo uusi käyttäjä",
|
||||
"create_shared_album_page_share_add_assets": "LISÄÄ KOHTEITA",
|
||||
"create_shared_album_page_share_select_photos": "Valitse kuvat",
|
||||
"create_shared_link": "Luo jakolinkki",
|
||||
"create_tag": "Luo tunniste",
|
||||
"create_tag_description": "Luo uusi tunniste. Sisäkkäisiä tunnisteita varten syötä tunnisteen täydellinen polku kauttaviivat mukaan luettuna.",
|
||||
"create_user": "Luo käyttäjä",
|
||||
@@ -716,6 +742,7 @@
|
||||
"current_server_address": "Nykyinen palvelinosoite",
|
||||
"custom_locale": "Muokatut maa-asetukset",
|
||||
"custom_locale_description": "Muotoile päivämäärät ja numerot perustuen alueen kieleen",
|
||||
"custom_url": "Mukautettu URL",
|
||||
"daily_title_text_date": "E, dd MMM",
|
||||
"daily_title_text_date_year": "E, dd MMM, yyyy",
|
||||
"dark": "Tumma",
|
||||
@@ -727,6 +754,7 @@
|
||||
"date_of_birth_saved": "Syntymäaika tallennettu",
|
||||
"date_range": "Päivämäärän rajaus",
|
||||
"day": "Päivä",
|
||||
"days": "Päivää",
|
||||
"deduplicate_all": "Poista kaikkien kaksoiskappaleet",
|
||||
"deduplication_criteria_1": "Kuvan koko tavuina",
|
||||
"deduplication_criteria_2": "EXIF-datan määrä",
|
||||
@@ -735,7 +763,8 @@
|
||||
"default_locale": "Oletuskieliasetus",
|
||||
"default_locale_description": "Muotoile päivämäärät ja numerot selaimesi kielen mukaan",
|
||||
"delete": "Poista",
|
||||
"delete_action_prompt": "{count} poistettu pysyvästi",
|
||||
"delete_action_confirmation_message": "Haluatko varmasti poistaa tämän aineiston? Tämä toiminto siirtää aineiston palvelimen roskakoriin ja kysyy, haluatko poistaa sen myös paikallisesti.",
|
||||
"delete_action_prompt": "{count} poistettu",
|
||||
"delete_album": "Poista albumi",
|
||||
"delete_api_key_prompt": "Haluatko varmasti poistaa tämän API-avaimen?",
|
||||
"delete_dialog_alert": "Nämä kohteet poistetaan pysyvästi Immich:stä ja laitteeltasi",
|
||||
@@ -749,9 +778,12 @@
|
||||
"delete_key": "Poista avain",
|
||||
"delete_library": "Poista kirjasto",
|
||||
"delete_link": "Poista linkki",
|
||||
"delete_local_action_prompt": "{count} poistettu paikallisesti",
|
||||
"delete_local_dialog_ok_backed_up_only": "Poista vain varmuuskopioidut",
|
||||
"delete_local_dialog_ok_force": "Poista kuitenkin",
|
||||
"delete_others": "Poista muut",
|
||||
"delete_permanently": "Poista pysyvästi",
|
||||
"delete_permanently_action_prompt": "{count} poistettu pysyvästi",
|
||||
"delete_shared_link": "Poista jaettu linkki",
|
||||
"delete_shared_link_dialog_title": "Poista jaettu linkki",
|
||||
"delete_tag": "Poista tunniste",
|
||||
@@ -762,6 +794,7 @@
|
||||
"description": "Kuvaus",
|
||||
"description_input_hint_text": "Lisää kuvaus...",
|
||||
"description_input_submit_error": "Virhe kuvauksen päivittämisessä, tarkista lisätiedot lokista",
|
||||
"deselect_all": "Poista valinnat",
|
||||
"details": "Tiedot",
|
||||
"direction": "Suunta",
|
||||
"disabled": "Poistettu käytöstä",
|
||||
@@ -779,6 +812,7 @@
|
||||
"documentation": "Dokumentaatio",
|
||||
"done": "Valmis",
|
||||
"download": "Lataa",
|
||||
"download_action_prompt": "Ladataan {count} kohdetta",
|
||||
"download_canceled": "Lataus peruutettu",
|
||||
"download_complete": "Lataus valmis",
|
||||
"download_enqueue": "Latausjonossa",
|
||||
@@ -805,8 +839,12 @@
|
||||
"edit": "Muokkaa",
|
||||
"edit_album": "Muokkaa albumia",
|
||||
"edit_avatar": "Muokkaa avataria",
|
||||
"edit_birthday": "Muokkaa syntymäpäivää",
|
||||
"edit_date": "Muokkaa päiväystä",
|
||||
"edit_date_and_time": "Muokkaa päivämäärää ja kellonaikaa",
|
||||
"edit_date_and_time_action_prompt": "{count} päivämäärää ja aikaa muutettu",
|
||||
"edit_date_and_time_by_offset": "Muuta päivämäärää siirtymällä",
|
||||
"edit_date_and_time_by_offset_interval": "Uusi päivämääräväli: {from} - {to}",
|
||||
"edit_description": "Muokkaa kuvausta",
|
||||
"edit_description_prompt": "Valitse uusi kuvaus:",
|
||||
"edit_exclusion_pattern": "Muokkaa poissulkemismallia",
|
||||
@@ -835,6 +873,7 @@
|
||||
"empty_trash": "Tyhjennä roskakori",
|
||||
"empty_trash_confirmation": "Haluatko varmasti tyhjentää roskakorin? Tämä poistaa pysyvästi kaikki tiedostot Immich:stä.\nToimintoa ei voi perua!",
|
||||
"enable": "Ota käyttöön",
|
||||
"enable_backup": "Ota varmuuskopiointi käyttöön",
|
||||
"enable_biometric_auth_description": "Syötä PIN-koodisi ottaaksesi biometrisen tunnistautumisen käyttöön",
|
||||
"enabled": "Käytössä",
|
||||
"end_date": "Päättymispäivä",
|
||||
@@ -878,6 +917,7 @@
|
||||
"failed_to_load_notifications": "Ilmoitusten lataaminen epäonnistui",
|
||||
"failed_to_load_people": "Henkilöiden lataus epäonnistui",
|
||||
"failed_to_remove_product_key": "Tuoteavaimen poistaminen epäonnistui",
|
||||
"failed_to_reset_pin_code": "PIN-koodin nollaus epäonnistui",
|
||||
"failed_to_stack_assets": "Medioiden pinoaminen epäonnistui",
|
||||
"failed_to_unstack_assets": "Medioiden pinoamisen purku epäonnistui",
|
||||
"failed_to_update_notification_status": "Ilmoituksen tilan päivittäminen epäonnistui",
|
||||
@@ -886,6 +926,7 @@
|
||||
"paths_validation_failed": "{paths, plural, one {# polun} other {# polun}} validointi epäonnistui",
|
||||
"profile_picture_transparent_pixels": "Profiilikuvassa ei voi olla läpinäkyviä pikseleitä. Zoomaa lähemmäs ja/tai siirrä kuvaa.",
|
||||
"quota_higher_than_disk_size": "Asettamasi kiintiö on suurempi kuin levyn koko",
|
||||
"something_went_wrong": "Jotain meni pieleen",
|
||||
"unable_to_add_album_users": "Käyttäjiä ei voi lisätä albumiin",
|
||||
"unable_to_add_assets_to_shared_link": "Medioiden lisääminen jaettuun linkkiin epäonnistui",
|
||||
"unable_to_add_comment": "Kommentin lisääminen epäonnistui",
|
||||
@@ -971,13 +1012,11 @@
|
||||
},
|
||||
"exif": "Exif",
|
||||
"exif_bottom_sheet_description": "Lisää kuvaus…",
|
||||
"exif_bottom_sheet_description_error": "Kuvauksen muuttaminen epäonnistui",
|
||||
"exif_bottom_sheet_details": "TIEDOT",
|
||||
"exif_bottom_sheet_location": "SIJAINTI",
|
||||
"exif_bottom_sheet_people": "IHMISET",
|
||||
"exif_bottom_sheet_person_add_person": "Lisää nimi",
|
||||
"exif_bottom_sheet_person_age_months": "Ikä {months} kuukautta",
|
||||
"exif_bottom_sheet_person_age_year_months": "Ikä 1 vuosi, {months} kuukautta",
|
||||
"exif_bottom_sheet_person_age_years": "Ikä {years}",
|
||||
"exit_slideshow": "Poistu diaesityksestä",
|
||||
"expand_all": "Laajenna kaikki",
|
||||
"experimental_settings_new_asset_list_subtitle": "Työn alla",
|
||||
@@ -991,6 +1030,8 @@
|
||||
"explorer": "Selain",
|
||||
"export": "Vie",
|
||||
"export_as_json": "Vie JSON-muodossa",
|
||||
"export_database": "Vie tietokanta",
|
||||
"export_database_description": "Vie SQLite-tietokanta",
|
||||
"extension": "Tiedostopääte",
|
||||
"external": "Ulkoisesta",
|
||||
"external_libraries": "Ulkoiset kirjastot",
|
||||
@@ -1022,6 +1063,7 @@
|
||||
"folder_not_found": "Kansiota ei löytynyt",
|
||||
"folders": "Kansiot",
|
||||
"folders_feature_description": "Käytetään kansionäkymää valokuvien ja videoiden selaamiseen järjestelmässä",
|
||||
"forgot_pin_code_question": "Unohditko PIN-koodisi?",
|
||||
"forward": "Eteenpäin",
|
||||
"gcast_enabled": "Google Cast",
|
||||
"gcast_enabled_description": "Ominaisuus lataa ulkoisia resursseja Googlelta toimiakseen.",
|
||||
@@ -1042,6 +1084,9 @@
|
||||
"haptic_feedback_switch": "Ota haptinen palaute käyttöön",
|
||||
"haptic_feedback_title": "Haptinen palaute",
|
||||
"has_quota": "On kiintiö",
|
||||
"hash_asset": "Tiivistetty kohde",
|
||||
"hashed_assets": "Tiivistettyä kohdetta",
|
||||
"hashing": "Tiivistys",
|
||||
"header_settings_add_header_tip": "Lisää otsikko",
|
||||
"header_settings_field_validator_msg": "Arvo ei voi olla tyhjä",
|
||||
"header_settings_header_name_input": "Otsikon nimi",
|
||||
@@ -1073,7 +1118,9 @@
|
||||
"home_page_upload_err_limit": "Voit lähettää palvelimelle enintään 30 kohdetta kerrallaan, ohitetaan",
|
||||
"host": "Isäntä",
|
||||
"hour": "Tunti",
|
||||
"hours": "Tunnit",
|
||||
"id": "ID",
|
||||
"idle": "Toimeton",
|
||||
"ignore_icloud_photos": "Ohita iCloud-kuvat",
|
||||
"ignore_icloud_photos_description": "iCloudiin tallennettuja kuvia ei ladata Immich-palvelimelle",
|
||||
"image": "Kuva",
|
||||
@@ -1131,10 +1178,12 @@
|
||||
"language_no_results_title": "Kieliä ei löydetty",
|
||||
"language_search_hint": "Etsi kieliä...",
|
||||
"language_setting_description": "Valitse suosimasi kieli",
|
||||
"large_files": "Suuret tiedostot",
|
||||
"last_seen": "Viimeksi nähty",
|
||||
"latest_version": "Viimeisin versio",
|
||||
"latitude": "Leveysaste",
|
||||
"leave": "Lähde",
|
||||
"leave": "Poistu",
|
||||
"leave_album": "Poistu albumista",
|
||||
"lens_model": "Objektiivin malli",
|
||||
"let_others_respond": "Anna muiden vastata",
|
||||
"level": "Taso",
|
||||
@@ -1146,16 +1195,18 @@
|
||||
"library_page_sort_created": "Viimeisin luotu",
|
||||
"library_page_sort_last_modified": "Viimeksi muokattu",
|
||||
"library_page_sort_title": "Albumin otsikko",
|
||||
"licenses": "Lisenssit",
|
||||
"light": "Vaalea",
|
||||
"like_deleted": "Tykkäys poistettu",
|
||||
"link_motion_video": "Linkitä liikevideo",
|
||||
"link_options": "Linkin asetukset",
|
||||
"link_to_oauth": "Linkki OAuth",
|
||||
"linked_oauth_account": "Linkitetty OAuth-tili",
|
||||
"list": "Lista",
|
||||
"loading": "Ladataan",
|
||||
"loading_search_results_failed": "Hakutulosten lataaminen epäonnistui",
|
||||
"local": "Paikallinen",
|
||||
"local_asset_cast_failed": "Kohdetta, joka ei ole ladattuna palvelimelle, ei voida striimata",
|
||||
"local_assets": "Paikalliset kohteet",
|
||||
"local_network": "Lähiverkko",
|
||||
"local_network_sheet_info": "Sovellus muodostaa yhteyden palvelimeen tämän URL-osoitteen kautta, kun käytetään määritettyä Wi-Fi-verkkoa",
|
||||
"location_permission": "Sijainnin käyttöoikeus",
|
||||
@@ -1212,8 +1263,7 @@
|
||||
"manage_your_devices": "Hallitse sisäänkirjautuneita laitteitasi",
|
||||
"manage_your_oauth_connection": "Hallitse OAuth-yhteyttäsi",
|
||||
"map": "Kartta",
|
||||
"map_assets_in_bound": "{count} kuva",
|
||||
"map_assets_in_bounds": "{count} kuvaa",
|
||||
"map_assets_in_bounds": "{count, plural, =0 {Ei kuvia tällä alueella} one {# kuva} other {# kuvaa}}",
|
||||
"map_cannot_get_user_location": "Käyttäjän sijaintia ei voitu määrittää",
|
||||
"map_location_dialog_yes": "Kyllä",
|
||||
"map_location_picker_page_use_location": "Käytä tätä sijaintia",
|
||||
@@ -1221,7 +1271,6 @@
|
||||
"map_location_service_disabled_title": "Paikannuspalvelu pois päältä",
|
||||
"map_marker_for_images": "Karttamarkerointi kuville, jotka on otettu kaupungissa {city}, maassa {country}",
|
||||
"map_marker_with_image": "Karttamarkerointi kuvalla",
|
||||
"map_no_assets_in_bounds": "Ei kuvia tällä alueella",
|
||||
"map_no_location_permission_content": "Paikannuslupa tarvitaan, jotta nykyisen sijainnin kohteita voidaan näyttää. Haluatko sallia pääsyn sijaintiin?",
|
||||
"map_no_location_permission_title": "Paikannuslupa estetty",
|
||||
"map_settings": "Kartta-asetukset",
|
||||
@@ -1258,6 +1307,7 @@
|
||||
"merged_people_count": "{count, plural, one {# Henkilö} other {# henkilöä}} yhdistetty",
|
||||
"minimize": "PIenennä",
|
||||
"minute": "Minuutti",
|
||||
"minutes": "Minuutit",
|
||||
"missing": "Puuttuvat",
|
||||
"model": "Malli",
|
||||
"month": "Kuukauden mukaan",
|
||||
@@ -1277,6 +1327,9 @@
|
||||
"my_albums": "Omat albumit",
|
||||
"name": "Nimi",
|
||||
"name_or_nickname": "Nimi tai lempinimi",
|
||||
"network_requirement_photos_upload": "Käytä mobiiliverkkoa kuvien varmuuskopioimiseksi",
|
||||
"network_requirement_videos_upload": "Käytä mobiiliverkkoa videoiden varmuuskopioimiseksi",
|
||||
"network_requirements_updated": "Verkkovaatimukset muuttuivat, nollataan varmuuskopiointijono",
|
||||
"networking_settings": "Verkko",
|
||||
"networking_subtitle": "Hallitse palvelinasetuksia",
|
||||
"never": "ei koskaan",
|
||||
@@ -1312,6 +1365,7 @@
|
||||
"no_results": "Ei tuloksia",
|
||||
"no_results_description": "Kokeile synonyymiä tai yleisempää avainsanaa",
|
||||
"no_shared_albums_message": "Luo albumi, jotta voit jakaa kuvia ja videoita toisille",
|
||||
"no_uploads_in_progress": "Ei käynnissä olevia latauksia",
|
||||
"not_in_any_album": "Ei yhdessäkään albumissa",
|
||||
"not_selected": "Ei valittu",
|
||||
"note_apply_storage_label_to_previously_uploaded assets": "Huom: Jotta voit soveltaa tallennustunnistetta aiemmin ladattuihin kohteisiin, suorita",
|
||||
@@ -1327,6 +1381,7 @@
|
||||
"oauth": "OAuth",
|
||||
"official_immich_resources": "Viralliset Immich-resurssit",
|
||||
"offline": "Offline",
|
||||
"offset": "Ero",
|
||||
"ok": "Ok",
|
||||
"oldest_first": "Vanhin ensin",
|
||||
"on_this_device": "Laitteella",
|
||||
@@ -1349,6 +1404,7 @@
|
||||
"original": "alkuperäinen",
|
||||
"other": "Muut",
|
||||
"other_devices": "Toiset laitteet",
|
||||
"other_entities": "Muut entiteetit",
|
||||
"other_variables": "Muut muuttujat",
|
||||
"owned": "Omistettu",
|
||||
"owner": "Omistaja",
|
||||
@@ -1403,6 +1459,9 @@
|
||||
"permission_onboarding_permission_limited": "Rajoitettu käyttöoikeus. Salliaksesi Immichin varmuuskopioida ja hallita koko kuvakirjastoasi, myönnä oikeus kuviin ja videoihin asetuksista.",
|
||||
"permission_onboarding_request": "Immich vaatii käyttöoikeuden kuvien ja videoiden käyttämiseen.",
|
||||
"person": "Henkilö",
|
||||
"person_age_months": "{months} kuukautta vanha",
|
||||
"person_age_year_months": "1 vuosi ja {months} kuukautta vanha",
|
||||
"person_age_years": "{years} vuotta vanha",
|
||||
"person_birthdate": "Syntynyt {date}",
|
||||
"person_hidden": "{name}{hidden, select, true { (piilotettu)} other {}}",
|
||||
"photo_shared_all_users": "Näyttää että olet jakanut kuvasi kaikkien käyttäjien kanssa, tai sinulla ei ole käyttäjää kenelle jakaa.",
|
||||
@@ -1480,6 +1539,7 @@
|
||||
"purchase_server_description_2": "Tukijan tila",
|
||||
"purchase_server_title": "Palvelin",
|
||||
"purchase_settings_server_activated": "Palvelimen tuoteavainta hallinnoi ylläpitäjä",
|
||||
"queue_status": "Jonossa {count}/{total}",
|
||||
"rating": "Tähtiarvostelu",
|
||||
"rating_clear": "Tyhjennä arvostelu",
|
||||
"rating_count": "{count, plural, one {# tähti} other {# tähteä}}",
|
||||
@@ -1508,6 +1568,8 @@
|
||||
"refreshing_faces": "Päivitetään kasvoja",
|
||||
"refreshing_metadata": "Päivitetään metadata",
|
||||
"regenerating_thumbnails": "Regeneroidaan pikkukuvia",
|
||||
"remote": "Etä",
|
||||
"remote_assets": "Etäkohteet",
|
||||
"remove": "Poista",
|
||||
"remove_assets_album_confirmation": "Haluatko varmasti poistaa {count, plural, one {# median} other {# mediaa}} albumista?",
|
||||
"remove_assets_shared_link_confirmation": "Haluatko varmasti poistaa {count, plural, one {# median} other {# mediaa}} tästä jakolinkistä?",
|
||||
@@ -1545,19 +1607,28 @@
|
||||
"reset_password": "Nollaa salasana",
|
||||
"reset_people_visibility": "Nollaa henkilöiden näkyvyysasetukset",
|
||||
"reset_pin_code": "Nollaa PIN-koodi",
|
||||
"reset_pin_code_description": "Jos olet unohtanut PIN-koodisi, ole yhteydessä järjestelmänvalvojaan",
|
||||
"reset_pin_code_success": "PIN-koodi nollattu onnistuneesti",
|
||||
"reset_pin_code_with_password": "Voit aina nollata PIN-koodisi salasanan avulla",
|
||||
"reset_sqlite": "Nollaa SQLite Tietokanta",
|
||||
"reset_sqlite_confirmation": "Haluatko varmasti nollata SQLite tietokannan? Sinun tulee kirjautua sovelluksesta ulos ja takaisin sisään uudelleensynkronoidaksesi datan",
|
||||
"reset_sqlite_success": "SQLite Tietokanta nollattu onnistuneesti",
|
||||
"reset_to_default": "Palauta oletusasetukset",
|
||||
"resolve_duplicates": "Ratkaise kaksoiskappaleet",
|
||||
"resolved_all_duplicates": "Kaikki kaksoiskappaleet selvitetty",
|
||||
"restore": "Palauta",
|
||||
"restore_all": "Palauta kaikki",
|
||||
"restore_trash_action_prompt": "{count} palautettu roskakorista",
|
||||
"restore_user": "Palauta käyttäjä",
|
||||
"restored_asset": "Palautettu media",
|
||||
"resume": "Jatka",
|
||||
"retry_upload": "Yritä latausta uudelleen",
|
||||
"review_duplicates": "Tarkastele kaksoiskappaleita",
|
||||
"review_large_files": "Tarkista suuret tiedostot",
|
||||
"role": "Rooli",
|
||||
"role_editor": "Editori",
|
||||
"role_viewer": "Toistin",
|
||||
"running": "Käynnissä",
|
||||
"save": "Tallenna",
|
||||
"save_to_gallery": "Tallenna galleriaan",
|
||||
"saved_api_key": "API-avain tallennettu",
|
||||
@@ -1689,6 +1760,7 @@
|
||||
"settings_saved": "Asetukset tallennettu",
|
||||
"setup_pin_code": "Määritä PIN-koodi",
|
||||
"share": "Jaa",
|
||||
"share_action_prompt": "Jaettu {count} kohdetta",
|
||||
"share_add_photos": "Lisää kuvia",
|
||||
"share_assets_selected": "{count} valittu",
|
||||
"share_dialog_preparing": "Valmistellaan...",
|
||||
@@ -1710,6 +1782,7 @@
|
||||
"shared_link_clipboard_copied_massage": "Kopioitu leikepöydältä",
|
||||
"shared_link_clipboard_text": "Linkki: {link}\nSalasana: {password}",
|
||||
"shared_link_create_error": "Jaetun linkin luomisessa tapahtui virhe",
|
||||
"shared_link_custom_url_description": "Avaa tämä jaettu linkki mukautetulla URL-osoitteella",
|
||||
"shared_link_edit_description_hint": "Lisää jaon kuvaus",
|
||||
"shared_link_edit_expire_after_option_day": "1 päivä",
|
||||
"shared_link_edit_expire_after_option_days": "{count} päivää",
|
||||
@@ -1735,6 +1808,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "Hallitse jaettuja linkkejä",
|
||||
"shared_link_options": "Jaetun linkin vaihtoehdot",
|
||||
"shared_link_password_description": "Vaadi salasana tämän jakolinkin käyttämiseksi",
|
||||
"shared_links": "Jaetut linkit",
|
||||
"shared_links_description": "Jaa kuvia ja videoita linkin avulla",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, other {# jaettua kuvaa ja videota.}}",
|
||||
@@ -1790,6 +1864,7 @@
|
||||
"sort_title": "Otsikko",
|
||||
"source": "Lähdekoodi",
|
||||
"stack": "Pinoa",
|
||||
"stack_action_prompt": "{count} pinottu",
|
||||
"stack_duplicates": "Pinoa kaksoiskappaleet",
|
||||
"stack_select_one_photo": "Valitse yksi pääkuva pinolle",
|
||||
"stack_selected_photos": "Pinoa valitut kuvat",
|
||||
@@ -1809,6 +1884,7 @@
|
||||
"storage_quota": "Tallennuskiintiö",
|
||||
"storage_usage": "{used} / {available} käytetty",
|
||||
"submit": "Lähetä",
|
||||
"success": "Onnistui",
|
||||
"suggestions": "Ehdotukset",
|
||||
"sunrise_on_the_beach": "Auringonnousu rannalla",
|
||||
"support": "Tuki",
|
||||
@@ -1818,6 +1894,8 @@
|
||||
"sync": "Synkronoi",
|
||||
"sync_albums": "Synkronoi albumit",
|
||||
"sync_albums_manual_subtitle": "Synkronoi kaikki ladatut videot ja valokuvat valittuihin varmuuskopioalbumeihin",
|
||||
"sync_local": "Synkronoi paikallinen",
|
||||
"sync_remote": "Synkronoi etä",
|
||||
"sync_upload_album_setting_subtitle": "Luo ja lataa valokuvasi ja videosi valittuihin albumeihin Immichissä",
|
||||
"tag": "Tunniste",
|
||||
"tag_assets": "Lisää tunnisteita",
|
||||
@@ -1828,6 +1906,7 @@
|
||||
"tag_updated": "Päivitetty tunniste: {tag}",
|
||||
"tagged_assets": "Tunnistettu {count, plural, one {# kohde} other {# kohdetta}}",
|
||||
"tags": "Tunnisteet",
|
||||
"tap_to_run_job": "Napauta suorittaaksesi tehtävän",
|
||||
"template": "Nimeämismalli",
|
||||
"theme": "Teema",
|
||||
"theme_selection": "Teeman valinta",
|
||||
@@ -1900,16 +1979,20 @@
|
||||
"unselect_all_duplicates": "Poista kaikkien kaksoiskappaleiden valinta",
|
||||
"unselect_all_in": "Poista kaikki valinnat {group}",
|
||||
"unstack": "Pura pino",
|
||||
"unstack_action_prompt": "{count} purettu pinosta",
|
||||
"unstacked_assets_count": "Poistettu pinosta {count, plural, one {# kohde} other {# kohdetta}}",
|
||||
"untagged": "Ilman tunnistetta",
|
||||
"up_next": "Seuraavaksi",
|
||||
"updated_at": "Päivitetty",
|
||||
"updated_password": "Salasana päivitetty",
|
||||
"upload": "Siirrä palvelimelle",
|
||||
"upload_action_prompt": "{count} jonossa lähetystä varten",
|
||||
"upload_concurrency": "Latausten samanaikaisuus",
|
||||
"upload_details": "Lähetyksen tiedot",
|
||||
"upload_dialog_info": "Haluatko varmuuskopioida valitut kohteet palvelimelle?",
|
||||
"upload_dialog_title": "Lähetä kohde",
|
||||
"upload_errors": "Lataus valmistui {count, plural, one {# virheen} other {# virheen}} kanssa. Päivitä sivu nähdäksesi ladatut tiedot.",
|
||||
"upload_finished": "Lähetys valmistui",
|
||||
"upload_progress": "Jäljellä {remaining, number} - Käsitelty {processed, number}/{total, number}",
|
||||
"upload_skipped_duplicates": "Ohitettiin {count, plural, one {# kaksoiskappale} other {# kaksoiskappaletta}}",
|
||||
"upload_status_duplicates": "Kaksoiskappaleet",
|
||||
@@ -1918,6 +2001,7 @@
|
||||
"upload_success": "Lataus onnistui. Päivitä sivu jotta näet latauksesi.",
|
||||
"upload_to_immich": "Lähetä Immichiin ({count})",
|
||||
"uploading": "Lähettää",
|
||||
"uploading_media": "Lähetetään mediaa",
|
||||
"url": "URL",
|
||||
"usage": "Käyttö",
|
||||
"use_biometric": "Käytä biometriikkaa",
|
||||
@@ -1938,6 +2022,7 @@
|
||||
"user_usage_stats_description": "Näytä tilin käyttötilastot",
|
||||
"username": "Käyttäjänimi",
|
||||
"users": "Käyttäjät",
|
||||
"users_added_to_album_count": "{count, plural, one {# käyttäjä} other {# käyttäjää}} lisätty albumiin",
|
||||
"utilities": "Apuohjelmat",
|
||||
"validate": "Validoi",
|
||||
"validate_endpoint_error": "Anna kelvollinen URL-osoite",
|
||||
@@ -1956,6 +2041,7 @@
|
||||
"view_album": "Näytä albumi",
|
||||
"view_all": "Näytä kaikki",
|
||||
"view_all_users": "Näytä kaikki käyttäjät",
|
||||
"view_details": "Näytä tiedot",
|
||||
"view_in_timeline": "Näytä aikajanalla",
|
||||
"view_link": "Näytä linkki",
|
||||
"view_links": "Näytä linkit",
|
||||
|
||||
117
i18n/fr.json
@@ -8,12 +8,13 @@
|
||||
"actions": "Actions",
|
||||
"active": "En cours",
|
||||
"activity": "Activité",
|
||||
"activity_changed": "Activité {enabled, select, true {autorisée} other {interdite}}",
|
||||
"activity_changed": "Activité {enabled, select, true {activée} other {désactivée}}",
|
||||
"add": "Ajouter",
|
||||
"add_a_description": "Ajouter une description",
|
||||
"add_a_location": "Ajouter une localisation",
|
||||
"add_a_name": "Ajouter un nom",
|
||||
"add_a_title": "Ajouter un titre",
|
||||
"add_birthday": "Ajouter un anniversaire",
|
||||
"add_endpoint": "Ajouter une adresse",
|
||||
"add_exclusion_pattern": "Ajouter un schéma d'exclusion",
|
||||
"add_import_path": "Ajouter un chemin à importer",
|
||||
@@ -27,6 +28,9 @@
|
||||
"add_to_album": "Ajouter à l'album",
|
||||
"add_to_album_bottom_sheet_added": "Ajouté à {album}",
|
||||
"add_to_album_bottom_sheet_already_exists": "Déjà dans {album}",
|
||||
"add_to_album_toggle": "Basculer la sélection pour {album}",
|
||||
"add_to_albums": "Ajouter aux albums",
|
||||
"add_to_albums_count": "Ajouter aux albums ({count})",
|
||||
"add_to_shared_album": "Ajouter à l'album partagé",
|
||||
"add_url": "Ajouter l'URL",
|
||||
"added_to_archive": "Ajouté à l'archive",
|
||||
@@ -44,6 +48,13 @@
|
||||
"backup_database": "Création d'une image de la base de données",
|
||||
"backup_database_enable_description": "Activer la création d'images de la base de données",
|
||||
"backup_keep_last_amount": "Nombre d'images à conserver",
|
||||
"backup_onboarding_1_description": "copie hors site dans le cloud ou sur un site distant.",
|
||||
"backup_onboarding_2_description": "copies locales sur différents appareils. Cela inclut les fichiers principaux ainsi qu'une sauvegarde locale de ces fichiers.",
|
||||
"backup_onboarding_3_description": "copies total de vos données, incluant les fichiers originaux. Cela inclut 1 copie hors site ainsi que 2 copies locales.",
|
||||
"backup_onboarding_description": "Une <backblaze-link>stratégie de sauvegarde 3-2-1</backblaze-link> est recommandé pour protéger vos données. Vous devriez conserver des copies de vos photos/vidéos téléversés ainsi que de la base de données d'Immich pour une solution de sauvegarde cohérente.",
|
||||
"backup_onboarding_footer": "Pour plus d'information sur la sauvegarde d'Immich, merci de vous référer à la <link>documentation</link>.",
|
||||
"backup_onboarding_parts_title": "Une sauvegarde 3-2-1 inclut :",
|
||||
"backup_onboarding_title": "Sauvegardes",
|
||||
"backup_settings": "Paramètres de création d'images de la base de données",
|
||||
"backup_settings_description": "Gérer les paramètres de création d'images de la base de données.",
|
||||
"cleared_jobs": "Tâches supprimées pour : {job}",
|
||||
@@ -347,6 +358,9 @@
|
||||
"trash_number_of_days_description": "Nombre de jours de rétention des médias dans la corbeille avant leur suppression définitive",
|
||||
"trash_settings": "Corbeille",
|
||||
"trash_settings_description": "Gérer les paramètres de la corbeille",
|
||||
"unlink_all_oauth_accounts": "Délier tous les comptes OAuth",
|
||||
"unlink_all_oauth_accounts_description": "Pensez à délier tous les comptes OAuth avant de migrer vers un nouveau fournisseur.",
|
||||
"unlink_all_oauth_accounts_prompt": "Êtes-vous sûr de vouloir délier tous les comptes OAuth ? Cela va réinitialiser l'identifiant OAuth de chaque utilisateur et est irrévocable.",
|
||||
"user_cleanup_job": "Nettoyage des utilisateurs",
|
||||
"user_delete_delay": "La suppression définitive du compte et des médias de <b>{user}</b> sera programmée dans {delay, plural, one {# jour} other {# jours}}.",
|
||||
"user_delete_delay_settings": "Délai de suppression",
|
||||
@@ -397,6 +411,7 @@
|
||||
"album_cover_updated": "Couverture de l'album mise à jour",
|
||||
"album_delete_confirmation": "Êtes-vous sûr de vouloir supprimer l'album {album} ?",
|
||||
"album_delete_confirmation_description": "Si cet album est partagé, les autres utilisateurs ne pourront plus y accéder.",
|
||||
"album_deleted": "Album supprimé",
|
||||
"album_info_card_backup_album_excluded": "EXCLUS",
|
||||
"album_info_card_backup_album_included": "INCLUS",
|
||||
"album_info_updated": "Détails de l'album mis à jour",
|
||||
@@ -485,7 +500,9 @@
|
||||
"assets": "Médias",
|
||||
"assets_added_count": "{count, plural, one {# média ajouté} other {# médias ajoutés}}",
|
||||
"assets_added_to_album_count": "{count, plural, one {# média ajouté} other {# médias ajoutés}} à l'album",
|
||||
"assets_added_to_albums_count": "{assetTotal, plural, one {# média ajouté} other {# médias ajoutés}} à {albumTotal} album(s)",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {Le média ne peut pas être ajouté} other {Les médias ne peuvent pas être ajoutés}} à l'album",
|
||||
"assets_cannot_be_added_to_albums": "{count, plural, one {Le média ne peut être ajouté} other {Les médias ne peuvent être ajoutés}} à aucun des albums",
|
||||
"assets_count": "{count, plural, one {# média} other {# médias}}",
|
||||
"assets_deleted_permanently": "{count} média(s) supprimé(s) définitivement",
|
||||
"assets_deleted_permanently_from_server": "{count} média(s) supprimé(s) définitivement du serveur Immich",
|
||||
@@ -502,6 +519,7 @@
|
||||
"assets_trashed_count": "{count, plural, one {# média} other {# médias}} mis à la corbeille",
|
||||
"assets_trashed_from_server": "{count} média(s) déplacé(s) vers la corbeille du serveur Immich",
|
||||
"assets_were_part_of_album_count": "{count, plural, one {Un média est} other {Des médias sont}} déjà dans l'album",
|
||||
"assets_were_part_of_albums_count": "{count, plural, one {Le média était déjà présent} other {Les médias étaient déjà présents}} dans les albums",
|
||||
"authorized_devices": "Appareils autorisés",
|
||||
"automatic_endpoint_switching_subtitle": "Se connecter localement lorsque connecté au WI-FI spécifié mais utiliser une adresse alternative lorsque connecté à un autre réseau",
|
||||
"automatic_endpoint_switching_title": "Changement automatique d'adresse",
|
||||
@@ -510,6 +528,7 @@
|
||||
"back_close_deselect": "Retournez en arrière, fermez ou désélectionnez",
|
||||
"background_location_permission": "Permission de localisation en arrière plan",
|
||||
"background_location_permission_content": "Afin de pouvoir changer d'adresse en arrière plan, Immich doit avoir *en permanence* accès à la localisation précise, afin d'accéder au le nom du réseau Wi-Fi utilisé",
|
||||
"backup": "Sauvegarde",
|
||||
"backup_album_selection_page_albums_device": "Albums sur l'appareil ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Tapez pour inclure, tapez deux fois pour exclure",
|
||||
"backup_album_selection_page_assets_scatter": "Les éléments peuvent être répartis sur plusieurs albums. De ce fait, les albums peuvent être inclus ou exclus pendant le processus de sauvegarde.",
|
||||
@@ -562,7 +581,7 @@
|
||||
"backup_controller_page_to_backup": "Albums à sauvegarder",
|
||||
"backup_controller_page_total_sub": "Toutes les photos et vidéos uniques des albums sélectionnés",
|
||||
"backup_controller_page_turn_off": "Désactiver la sauvegarde",
|
||||
"backup_controller_page_turn_on": "Activer la sauvegarde",
|
||||
"backup_controller_page_turn_on": "Activer la sauvegarde au premier plan",
|
||||
"backup_controller_page_uploading_file_info": "Envoi des informations du fichier",
|
||||
"backup_err_only_album": "Impossible de retirer le seul album",
|
||||
"backup_info_card_assets": "éléments",
|
||||
@@ -570,8 +589,10 @@
|
||||
"backup_manual_in_progress": "Envoi déjà en cours. Réessayez plus tard",
|
||||
"backup_manual_success": "Succès",
|
||||
"backup_manual_title": "Statut de l'envoi",
|
||||
"backup_options": "Options de sauvegarde",
|
||||
"backup_options_page_title": "Options de sauvegarde",
|
||||
"backup_setting_subtitle": "Ajuster les paramètres d'envoi au premier et en arrière-plan",
|
||||
"backup_settings_subtitle": "Gérer les paramètres de téléversement",
|
||||
"backward": "Arrière",
|
||||
"beta_sync": "Statut de la synchronisation béta",
|
||||
"beta_sync_subtitle": "Gérer le nouveau système de synchronisation",
|
||||
@@ -592,7 +613,7 @@
|
||||
"cache_settings_clear_cache_button": "Effacer le cache",
|
||||
"cache_settings_clear_cache_button_title": "Efface le cache de l'application. Cela aura un impact significatif sur les performances de l'application jusqu'à ce que le cache soit reconstruit.",
|
||||
"cache_settings_duplicated_assets_clear_button": "EFFACER",
|
||||
"cache_settings_duplicated_assets_subtitle": "Photos et vidéos qui sont exclues par l'application",
|
||||
"cache_settings_duplicated_assets_subtitle": "Photos et vidéos qui sont ignorées par l'application",
|
||||
"cache_settings_duplicated_assets_title": "Médias dupliqués ({count})",
|
||||
"cache_settings_statistics_album": "Miniatures de la bibliothèque",
|
||||
"cache_settings_statistics_full": "Images complètes",
|
||||
@@ -641,6 +662,7 @@
|
||||
"clear": "Effacer",
|
||||
"clear_all": "Effacer tout",
|
||||
"clear_all_recent_searches": "Supprimer les recherches récentes",
|
||||
"clear_file_cache": "Vider le fichier de cache",
|
||||
"clear_message": "Effacer le message",
|
||||
"clear_value": "Effacer la valeur",
|
||||
"client_cert_dialog_msg_confirm": "D'accord",
|
||||
@@ -659,18 +681,18 @@
|
||||
"color_theme": "Thème de couleur",
|
||||
"comment_deleted": "Commentaire supprimé",
|
||||
"comment_options": "Options des commentaires",
|
||||
"comments_and_likes": "Commentaires et \"j'aime\"",
|
||||
"comments_and_likes": "Commentaires et \"J'aime\"",
|
||||
"comments_are_disabled": "Les commentaires sont désactivés",
|
||||
"common_create_new_album": "Créer un nouvel album",
|
||||
"common_server_error": "Veuillez vérifier votre connexion réseau, vous assurer que le serveur est accessible et que les versions de l'application et du serveur sont compatibles.",
|
||||
"completed": "Complété",
|
||||
"confirm": "Confirmer",
|
||||
"confirm_admin_password": "Confirmer le mot de passe Admin",
|
||||
"confirm": "Confirmez",
|
||||
"confirm_admin_password": "Confirmez le mot de passe Admin",
|
||||
"confirm_delete_face": "Êtes-vous sûr de vouloir supprimer le visage de {name} du média ?",
|
||||
"confirm_delete_shared_link": "Voulez-vous vraiment supprimer ce lien partagé ?",
|
||||
"confirm_keep_this_delete_others": "Tous les autres médias dans la pile seront supprimés sauf celui-ci. Êtes-vous sûr de vouloir continuer ?",
|
||||
"confirm_new_pin_code": "Confirmer le nouveau code PIN",
|
||||
"confirm_password": "Confirmer le mot de passe",
|
||||
"confirm_new_pin_code": "Confirmez le nouveau code PIN",
|
||||
"confirm_password": "Confirmez le mot de passe",
|
||||
"confirm_tag_face": "Voulez-vous identifier ce visage en tant que {name} ?",
|
||||
"confirm_tag_face_unnamed": "Voulez-vous identifier ce visage ?",
|
||||
"connected_device": "Appareil connecté",
|
||||
@@ -711,6 +733,7 @@
|
||||
"create_new_user": "Créer un nouvel utilisateur",
|
||||
"create_shared_album_page_share_add_assets": "AJOUTER DES ÉLÉMENTS",
|
||||
"create_shared_album_page_share_select_photos": "Sélectionner les photos",
|
||||
"create_shared_link": "Créer un lien partagé",
|
||||
"create_tag": "Créer une étiquette",
|
||||
"create_tag_description": "Créer une nouvelle étiquette. Pour les étiquettes imbriquées, veuillez entrer le chemin complet de l'étiquette, y compris les caractères \"/\".",
|
||||
"create_user": "Créer un utilisateur",
|
||||
@@ -723,6 +746,7 @@
|
||||
"current_server_address": "Adresse actuelle du serveur",
|
||||
"custom_locale": "Paramètres régionaux personnalisés",
|
||||
"custom_locale_description": "Afficher les dates et nombres en fonction des paramètres régionaux",
|
||||
"custom_url": "URL personnalisée",
|
||||
"daily_title_text_date": "E, dd MMM",
|
||||
"daily_title_text_date_year": "E, dd MMM, yyyy",
|
||||
"dark": "Sombre",
|
||||
@@ -734,6 +758,7 @@
|
||||
"date_of_birth_saved": "Date de naissance enregistrée avec succès",
|
||||
"date_range": "Plage de dates",
|
||||
"day": "Jour",
|
||||
"days": "Jours",
|
||||
"deduplicate_all": "Dédupliquer tout",
|
||||
"deduplication_criteria_1": "Taille de l'image en octets",
|
||||
"deduplication_criteria_2": "Nombre de données EXIF",
|
||||
@@ -742,7 +767,8 @@
|
||||
"default_locale": "Région par défaut",
|
||||
"default_locale_description": "Afficher les dates et nombres en fonction des paramètres de votre navigateur",
|
||||
"delete": "Supprimer",
|
||||
"delete_action_prompt": "{count} supprimé(s) définitivement",
|
||||
"delete_action_confirmation_message": "Êtes-vous sûr de vouloir supprimer ce média ? Cela déplacera le média dans la poubelle du serveur et vous demandera si vous voulez le supprimer localement",
|
||||
"delete_action_prompt": "{count} supprimé(s)",
|
||||
"delete_album": "Supprimer l'album",
|
||||
"delete_api_key_prompt": "Voulez-vous vraiment supprimer cette clé API ?",
|
||||
"delete_dialog_alert": "Ces médias seront définitivement supprimés de Immich et de votre appareil",
|
||||
@@ -760,6 +786,8 @@
|
||||
"delete_local_dialog_ok_backed_up_only": "Suppression des données sauvegardées uniquement",
|
||||
"delete_local_dialog_ok_force": "Supprimer tout de même",
|
||||
"delete_others": "Supprimer les autres",
|
||||
"delete_permanently": "Supprimer définitivement",
|
||||
"delete_permanently_action_prompt": "{count} supprimé(s) définitivement",
|
||||
"delete_shared_link": "Supprimer le lien partagé",
|
||||
"delete_shared_link_dialog_title": "Supprimer le lien partagé",
|
||||
"delete_tag": "Supprimer l'étiquette",
|
||||
@@ -815,8 +843,12 @@
|
||||
"edit": "Modifier",
|
||||
"edit_album": "Modifier l'album",
|
||||
"edit_avatar": "Modifier l'avatar",
|
||||
"edit_birthday": "Modifier l'anniversaire",
|
||||
"edit_date": "Modifier la date",
|
||||
"edit_date_and_time": "Modifier la date et l'heure",
|
||||
"edit_date_and_time_action_prompt": "{count} modifié(s) sur leur date et heure",
|
||||
"edit_date_and_time_by_offset": "Ajouter un décalage à la date",
|
||||
"edit_date_and_time_by_offset_interval": "Nouvelle plage de date : {from} - {to}",
|
||||
"edit_description": "Modifier la description",
|
||||
"edit_description_prompt": "Choisir une nouvelle description :",
|
||||
"edit_exclusion_pattern": "Modifier le schéma d'exclusion",
|
||||
@@ -845,11 +877,11 @@
|
||||
"empty_trash": "Vider la corbeille",
|
||||
"empty_trash_confirmation": "Êtes-vous sûr de vouloir vider la corbeille ? Cela supprimera définitivement de Immich tous les médias qu'elle contient.\nVous ne pouvez pas annuler cette action !",
|
||||
"enable": "Active",
|
||||
"enable_backup": "Activer Backup",
|
||||
"enable_backup": "Activer la sauvegarde",
|
||||
"enable_biometric_auth_description": "Entrez votre code PIN pour activer l'authentification biométrique",
|
||||
"enabled": "Activé",
|
||||
"end_date": "Date de fin",
|
||||
"enqueued": "Mis en file",
|
||||
"enqueued": "Mis en file d'attente",
|
||||
"enter_wifi_name": "Entrez le nom du réseau wifi",
|
||||
"enter_your_pin_code": "Entrez votre code PIN",
|
||||
"enter_your_pin_code_subtitle": "Entrez votre code PIN pour accéder au dossier verrouillé",
|
||||
@@ -889,6 +921,7 @@
|
||||
"failed_to_load_notifications": "Erreur de récupération des notifications",
|
||||
"failed_to_load_people": "Impossible de charger les personnes",
|
||||
"failed_to_remove_product_key": "Échec de suppression de la clé du produit",
|
||||
"failed_to_reset_pin_code": "Échec de la réinitialisation du code PIN",
|
||||
"failed_to_stack_assets": "Impossible d'empiler les médias",
|
||||
"failed_to_unstack_assets": "Impossible de dépiler les médias",
|
||||
"failed_to_update_notification_status": "Erreur de mise à jour du statut des notifications",
|
||||
@@ -897,6 +930,7 @@
|
||||
"paths_validation_failed": "Validation échouée pour {paths, plural, one {# un chemin} other {# plusieurs chemins}}",
|
||||
"profile_picture_transparent_pixels": "Les images de profil ne peuvent pas avoir de pixels transparents. Veuillez agrandir et/ou déplacer l'image.",
|
||||
"quota_higher_than_disk_size": "Le quota saisi est supérieur à l'espace disponible",
|
||||
"something_went_wrong": "Une erreur est survenue",
|
||||
"unable_to_add_album_users": "Impossible d'ajouter des utilisateurs à l'album",
|
||||
"unable_to_add_assets_to_shared_link": "Impossible d'ajouter des médias au lien partagé",
|
||||
"unable_to_add_comment": "Impossible d'ajouter un commentaire",
|
||||
@@ -982,13 +1016,11 @@
|
||||
},
|
||||
"exif": "Exif",
|
||||
"exif_bottom_sheet_description": "Ajouter une description...",
|
||||
"exif_bottom_sheet_description_error": "Erreur de mise à jour de la description",
|
||||
"exif_bottom_sheet_details": "DÉTAILS",
|
||||
"exif_bottom_sheet_location": "LOCALISATION",
|
||||
"exif_bottom_sheet_people": "PERSONNES",
|
||||
"exif_bottom_sheet_person_add_person": "Ajouter un nom",
|
||||
"exif_bottom_sheet_person_age_months": "Âge {months} mois",
|
||||
"exif_bottom_sheet_person_age_year_months": "Âge 1 an, {months} mois",
|
||||
"exif_bottom_sheet_person_age_years": "Âge {years}",
|
||||
"exit_slideshow": "Quitter le diaporama",
|
||||
"expand_all": "Tout développer",
|
||||
"experimental_settings_new_asset_list_subtitle": "En cours de développement",
|
||||
@@ -1002,6 +1034,8 @@
|
||||
"explorer": "Explorateur",
|
||||
"export": "Exporter",
|
||||
"export_as_json": "Exporter en JSON",
|
||||
"export_database": "Exporter la base de données",
|
||||
"export_database_description": "Exporter la base de données SQLite",
|
||||
"extension": "Extension",
|
||||
"external": "Externe",
|
||||
"external_libraries": "Bibliothèques externes",
|
||||
@@ -1028,11 +1062,13 @@
|
||||
"filter_people": "Filtrer les personnes",
|
||||
"filter_places": "Filtrer par lieu",
|
||||
"find_them_fast": "Pour les retrouver rapidement par leur nom",
|
||||
"first": "Premier",
|
||||
"fix_incorrect_match": "Corriger une association incorrecte",
|
||||
"folder": "Dossier",
|
||||
"folder_not_found": "Dossier introuvable",
|
||||
"folders": "Dossiers",
|
||||
"folders_feature_description": "Parcourir l'affichage par dossiers pour les photos et les vidéos sur le système de fichiers",
|
||||
"forgot_pin_code_question": "Code PIN oublié ?",
|
||||
"forward": "Avant",
|
||||
"gcast_enabled": "Diffusion Google Cast",
|
||||
"gcast_enabled_description": "Cette fonctionnalité charge des ressources externes depuis Google pour fonctionner.",
|
||||
@@ -1087,7 +1123,9 @@
|
||||
"home_page_upload_err_limit": "Impossible d'envoyer plus de 30 médias en même temps, demande ignorée",
|
||||
"host": "Hôte",
|
||||
"hour": "Heure",
|
||||
"hours": "Heures",
|
||||
"id": "ID",
|
||||
"idle": "Inactif",
|
||||
"ignore_icloud_photos": "Ignorer les photos iCloud",
|
||||
"ignore_icloud_photos_description": "Les photos stockées sur iCloud ne seront pas envoyées sur le serveur Immich",
|
||||
"image": "Image",
|
||||
@@ -1145,10 +1183,13 @@
|
||||
"language_no_results_title": "Aucune langue trouvée",
|
||||
"language_search_hint": "Recherche de langues...",
|
||||
"language_setting_description": "Sélectionnez votre langue préférée",
|
||||
"large_files": "Fichiers volumineux",
|
||||
"last": "Dernier",
|
||||
"last_seen": "Dernièrement utilisé",
|
||||
"latest_version": "Dernière version",
|
||||
"latitude": "Latitude",
|
||||
"leave": "Quitter",
|
||||
"leave_album": "Quitter l'album",
|
||||
"lens_model": "Modèle d'objectif",
|
||||
"let_others_respond": "Laisser les autres réagir",
|
||||
"level": "Niveau",
|
||||
@@ -1162,9 +1203,9 @@
|
||||
"library_page_sort_title": "Titre de l'album",
|
||||
"licenses": "Licences",
|
||||
"light": "Clair",
|
||||
"like_deleted": "Réaction « j'aime » supprimée",
|
||||
"like": "J'aime",
|
||||
"like_deleted": "Réaction « J'aime » supprimée",
|
||||
"link_motion_video": "Lier la photo animée",
|
||||
"link_options": "Options de lien",
|
||||
"link_to_oauth": "Lien au service OAuth",
|
||||
"linked_oauth_account": "Compte OAuth rattaché",
|
||||
"list": "Liste",
|
||||
@@ -1229,8 +1270,7 @@
|
||||
"manage_your_devices": "Gérer vos appareils",
|
||||
"manage_your_oauth_connection": "Gérer votre connexion OAuth",
|
||||
"map": "Carte",
|
||||
"map_assets_in_bound": "{count} photo",
|
||||
"map_assets_in_bounds": "{count} photos",
|
||||
"map_assets_in_bounds": "{count, plural, =0 {Aucune photo dans cette zone} one {# photo} other {# photos}}",
|
||||
"map_cannot_get_user_location": "Impossible d'obtenir la localisation de l'utilisateur",
|
||||
"map_location_dialog_yes": "Oui",
|
||||
"map_location_picker_page_use_location": "Utiliser ma position",
|
||||
@@ -1238,7 +1278,6 @@
|
||||
"map_location_service_disabled_title": "Service de localisation désactivé",
|
||||
"map_marker_for_images": "Marqueur de carte pour les images prises à {city}, {country}",
|
||||
"map_marker_with_image": "Marqueur de carte avec image",
|
||||
"map_no_assets_in_bounds": "Pas de photos dans cette zone",
|
||||
"map_no_location_permission_content": "L'autorisation de localisation est nécessaire pour afficher les médias de votre emplacement actuel. Souhaitez-vous l'autoriser maintenant ?",
|
||||
"map_no_location_permission_title": "Permission de localisation refusée",
|
||||
"map_settings": "Paramètres de la carte",
|
||||
@@ -1275,6 +1314,7 @@
|
||||
"merged_people_count": "{count, plural, one {# personne fusionnée} other {# personnes fusionnées}}",
|
||||
"minimize": "Réduire",
|
||||
"minute": "Minute",
|
||||
"minutes": "Minutes",
|
||||
"missing": "Manquant",
|
||||
"model": "Modèle",
|
||||
"month": "Mois",
|
||||
@@ -1284,7 +1324,7 @@
|
||||
"move_off_locked_folder": "Déplacer en dehors du dossier verrouillé",
|
||||
"move_to_lock_folder_action_prompt": "{count} ajouté(s) au dossier verrouillé",
|
||||
"move_to_locked_folder": "Déplacer dans le dossier verrouillé",
|
||||
"move_to_locked_folder_confirmation": "Ces photos et vidéos seront retirés de tout les albums et ne seront visibles que dans le dossier verrouillé",
|
||||
"move_to_locked_folder_confirmation": "Ces photos et vidéos seront retirées de tous les albums et ne seront visibles que dans le dossier verrouillé",
|
||||
"moved_to_archive": "{count, plural, one {# élément déplacé} other {# éléments déplacés}} vers les archives",
|
||||
"moved_to_library": "{count, plural, one {# élément déplacé} other {# éléments déplacés}} vers la bibliothèque",
|
||||
"moved_to_trash": "Déplacé dans la corbeille",
|
||||
@@ -1294,6 +1334,9 @@
|
||||
"my_albums": "Mes albums",
|
||||
"name": "Nom",
|
||||
"name_or_nickname": "Nom ou surnom",
|
||||
"network_requirement_photos_upload": "Utiliser les données mobile pour sauvegarder les photos",
|
||||
"network_requirement_videos_upload": "Utiliser les données mobile pour sauvegarder les vidéos",
|
||||
"network_requirements_updated": "Contraintes réseau modifiées, file d'attente de sauvegarde réinitialisée",
|
||||
"networking_settings": "Réseau",
|
||||
"networking_subtitle": "Gérer les adresses du serveur",
|
||||
"never": "Jamais",
|
||||
@@ -1345,6 +1388,7 @@
|
||||
"oauth": "OAuth",
|
||||
"official_immich_resources": "Ressources Immich officielles",
|
||||
"offline": "Hors ligne",
|
||||
"offset": "Décalage",
|
||||
"ok": "OK",
|
||||
"oldest_first": "Anciens en premier",
|
||||
"on_this_device": "Sur cet appareil",
|
||||
@@ -1422,6 +1466,9 @@
|
||||
"permission_onboarding_permission_limited": "Permission limitée. Pour permettre à Immich de sauvegarder et de gérer l'ensemble de votre bibliothèque, accordez l'autorisation pour les photos et vidéos dans les Paramètres.",
|
||||
"permission_onboarding_request": "Immich nécessite l'autorisation d'accéder à vos photos et vidéos.",
|
||||
"person": "Personne",
|
||||
"person_age_months": "{months, plural, one {# mois} other {# mois}}",
|
||||
"person_age_year_months": "1 an, {months, plural, one {# mois} other {# mois}}",
|
||||
"person_age_years": "{years, plural, other {# ans}}",
|
||||
"person_birthdate": "Né(e) le {date}",
|
||||
"person_hidden": "{name}{hidden, select, true { (caché)} other {}}",
|
||||
"photo_shared_all_users": "Il semble que vous ayez partagé vos photos avec tous les utilisateurs ou que vous n'ayez aucun utilisateur avec qui les partager.",
|
||||
@@ -1499,7 +1546,7 @@
|
||||
"purchase_server_description_2": "Statut de contributeur",
|
||||
"purchase_server_title": "Serveur",
|
||||
"purchase_settings_server_activated": "La clé du produit pour le Serveur est gérée par l'administrateur",
|
||||
"queue_status": "File d'attente {count}/{total}",
|
||||
"queue_status": "{count}/{total} en file d'attente",
|
||||
"rating": "Étoile d'évaluation",
|
||||
"rating_clear": "Effacer l'évaluation",
|
||||
"rating_count": "{count, plural, one {# étoile} other {# étoiles}}",
|
||||
@@ -1528,7 +1575,7 @@
|
||||
"refreshing_faces": "Actualisation des visages",
|
||||
"refreshing_metadata": "Actualisation des métadonnées",
|
||||
"regenerating_thumbnails": "Regénération des miniatures",
|
||||
"remote": "A distance",
|
||||
"remote": "À distance",
|
||||
"remote_assets": "Média à distance",
|
||||
"remove": "Supprimer",
|
||||
"remove_assets_album_confirmation": "Êtes-vous sûr de vouloir supprimer {count, plural, one {# média} other {# médias}} de l'album ?",
|
||||
@@ -1567,8 +1614,11 @@
|
||||
"reset_password": "Réinitialiser le mot de passe",
|
||||
"reset_people_visibility": "Réinitialiser la visibilité des personnes",
|
||||
"reset_pin_code": "Réinitialiser le code PIN",
|
||||
"reset_pin_code_description": "Si vous avez oublié votre code PIN, vous devez contacter l'administrateur du serveur pour le réinitialiser",
|
||||
"reset_pin_code_success": "Code PIN réinitialisé avec succès",
|
||||
"reset_pin_code_with_password": "Vous pouvez toujours réinitialiser le code PIN avec votre mot de passe",
|
||||
"reset_sqlite": "Réinitialiser la base de données SQLite",
|
||||
"reset_sqlite_confirmation": "Êtes vous sur que vous voulez réinitialiser la base de données SQLite ? Vous devrez vous déconnecter and vous reconnecter à nouveau pour re-synchroniser les données",
|
||||
"reset_sqlite_confirmation": "Êtes-vous certain de vouloir réinitialiser la base de données SQLite ? Vous devrez vous déconnecter puis vous reconnecter à nouveau pour resynchroniser les données",
|
||||
"reset_sqlite_success": "La base de données SQLite à été réinitialisé avec succès",
|
||||
"reset_to_default": "Rétablir les valeurs par défaut",
|
||||
"resolve_duplicates": "Résoudre les doublons",
|
||||
@@ -1581,10 +1631,11 @@
|
||||
"resume": "Reprendre",
|
||||
"retry_upload": "Réessayer l'envoi",
|
||||
"review_duplicates": "Consulter les doublons",
|
||||
"review_large_files": "Consulter les fichiers volumineux",
|
||||
"role": "Rôle",
|
||||
"role_editor": "Éditeur",
|
||||
"role_viewer": "Visionneuse",
|
||||
"running": "En marche",
|
||||
"running": "En cours",
|
||||
"save": "Sauvegarder",
|
||||
"save_to_gallery": "Enregistrer",
|
||||
"saved_api_key": "Clé API sauvegardée",
|
||||
@@ -1738,6 +1789,7 @@
|
||||
"shared_link_clipboard_copied_massage": "Copié dans le presse-papier",
|
||||
"shared_link_clipboard_text": "Lien : {link}\nMot de passe : {password}",
|
||||
"shared_link_create_error": "Erreur pendant la création du lien partagé",
|
||||
"shared_link_custom_url_description": "Accéder à ce lien partagé avec une URL personnalisée",
|
||||
"shared_link_edit_description_hint": "Saisir la description du partage",
|
||||
"shared_link_edit_expire_after_option_day": "1 jour",
|
||||
"shared_link_edit_expire_after_option_days": "{count} jours",
|
||||
@@ -1763,6 +1815,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "Gérer les liens partagés",
|
||||
"shared_link_options": "Options de lien partagé",
|
||||
"shared_link_password_description": "Demander un mot de passe pour accéder à ce lien partagé",
|
||||
"shared_links": "Liens partagés",
|
||||
"shared_links_description": "Partager les photos et vidéos via un lien",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, other {# photos et vidéos partagées.}}",
|
||||
@@ -1812,13 +1865,14 @@
|
||||
"sort_created": "Date de création",
|
||||
"sort_items": "Nombre d'éléments",
|
||||
"sort_modified": "Date de modification",
|
||||
"sort_newest": "Photo la plus récente",
|
||||
"sort_oldest": "Photo la plus ancienne",
|
||||
"sort_people_by_similarity": "Trier les personnes par similitude",
|
||||
"sort_recent": "Photo la plus récente",
|
||||
"sort_title": "Titre",
|
||||
"source": "Source",
|
||||
"stack": "Empiler",
|
||||
"stack_action_prompt": "{count} groupé(s)",
|
||||
"stack_action_prompt": "{count} empilé(s)",
|
||||
"stack_duplicates": "Empiler les doublons",
|
||||
"stack_select_one_photo": "Sélectionnez une photo principale pour la pile",
|
||||
"stack_selected_photos": "Empiler les photos sélectionnées",
|
||||
@@ -1932,19 +1986,21 @@
|
||||
"unselect_all": "Annuler la sélection",
|
||||
"unselect_all_duplicates": "Désélectionner tous les doublons",
|
||||
"unselect_all_in": "Tout désélectionner dans {group}",
|
||||
"unstack": "Désempiler",
|
||||
"unstack_action_prompt": "{count} non groupés",
|
||||
"unstack": "Dépiler",
|
||||
"unstack_action_prompt": "{count} dépilé(s)",
|
||||
"unstacked_assets_count": "{count, plural, one {# média dépilé} other {# médias dépilés}}",
|
||||
"untagged": "Étiquette supprimée",
|
||||
"untagged": "Sans étiquette",
|
||||
"up_next": "Suite",
|
||||
"updated_at": "Mis à jour à",
|
||||
"updated_password": "Mot de passe mis à jour",
|
||||
"upload": "Envoyer",
|
||||
"upload_action_prompt": "{count} en attente d'envoi",
|
||||
"upload_concurrency": "Envois simultanés",
|
||||
"upload_details": "Uploader les details",
|
||||
"upload_details": "Détails des envois",
|
||||
"upload_dialog_info": "Voulez-vous sauvegarder la sélection vers le serveur ?",
|
||||
"upload_dialog_title": "Envoyer le média",
|
||||
"upload_errors": "L'envoi s'est complété avec {count, plural, one {# erreur} other {# erreurs}}. Rafraîchissez la page pour voir les nouveaux médias envoyés.",
|
||||
"upload_finished": "Envoi fini",
|
||||
"upload_progress": "{remaining, number} restant(s) - {processed, number} traité(s)/{total, number}",
|
||||
"upload_skipped_duplicates": "{count, plural, one {# doublon ignoré} other {# doublons ignorés}}",
|
||||
"upload_status_duplicates": "Doublons",
|
||||
@@ -1953,6 +2009,7 @@
|
||||
"upload_success": "Envoi réussi. Rafraîchissez la page pour voir les nouveaux médias envoyés.",
|
||||
"upload_to_immich": "Envoyer vers Immich ({count})",
|
||||
"uploading": "Envoi",
|
||||
"uploading_media": "Envoi du média",
|
||||
"url": "URL",
|
||||
"usage": "Utilisation",
|
||||
"use_biometric": "Utiliser l'authentification biométrique",
|
||||
@@ -2004,7 +2061,7 @@
|
||||
"view_user": "Voir l'utilisateur",
|
||||
"viewer_remove_from_stack": "Retirer de la pile",
|
||||
"viewer_stack_use_as_main_asset": "Utiliser comme élément principal",
|
||||
"viewer_unstack": "Désempiler",
|
||||
"viewer_unstack": "Dépiler",
|
||||
"visibility_changed": "Visibilité changée pour {count, plural, one {# personne} other {# personnes}}",
|
||||
"waiting": "En attente",
|
||||
"warning": "Attention",
|
||||
|
||||
@@ -476,6 +476,7 @@
|
||||
"back_close_deselect": "Atrás, pechar ou deseleccionar",
|
||||
"background_location_permission": "Permiso de ubicación en segundo plano",
|
||||
"background_location_permission_content": "Para cambiar de rede cando se executa en segundo plano, Immich debe ter *sempre* acceso á ubicación precisa para que a aplicación poida ler o nome da rede wifi",
|
||||
"backup": "Copia de Seguridade",
|
||||
"backup_album_selection_page_albums_device": "Álbums no dispositivo ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Tocar para incluír, dobre toque para excluír",
|
||||
"backup_album_selection_page_assets_scatter": "Os activos poden dispersarse por varios álbums. Polo tanto, os álbums poden incluírse ou excluírse durante o proceso de copia de seguridade.",
|
||||
@@ -915,9 +916,6 @@
|
||||
"exif_bottom_sheet_location": "UBICACIÓN",
|
||||
"exif_bottom_sheet_people": "PERSOAS",
|
||||
"exif_bottom_sheet_person_add_person": "Engadir nome",
|
||||
"exif_bottom_sheet_person_age_months": "Idade {months} meses",
|
||||
"exif_bottom_sheet_person_age_year_months": "Idade 1 ano, {months} meses",
|
||||
"exif_bottom_sheet_person_age_years": "Idade {years}",
|
||||
"exit_slideshow": "Saír da Presentación",
|
||||
"expand_all": "Expandir todo",
|
||||
"experimental_settings_new_asset_list_subtitle": "Traballo en progreso",
|
||||
@@ -1070,7 +1068,6 @@
|
||||
"light": "Claro",
|
||||
"like_deleted": "Gústame eliminado",
|
||||
"link_motion_video": "Ligar vídeo en movemento",
|
||||
"link_options": "Opcións da ligazón",
|
||||
"link_to_oauth": "Ligar a OAuth",
|
||||
"linked_oauth_account": "Conta OAuth ligada",
|
||||
"list": "Lista",
|
||||
@@ -1129,7 +1126,6 @@
|
||||
"manage_your_devices": "Xestionar os teus dispositivos con sesión iniciada",
|
||||
"manage_your_oauth_connection": "Xestionar a túa conexión OAuth",
|
||||
"map": "Mapa",
|
||||
"map_assets_in_bound": "{count} foto",
|
||||
"map_assets_in_bounds": "{count} fotos",
|
||||
"map_cannot_get_user_location": "Non se pode obter a ubicación do usuario",
|
||||
"map_location_dialog_yes": "Si",
|
||||
@@ -1138,7 +1134,6 @@
|
||||
"map_location_service_disabled_title": "Servizo de ubicación deshabilitado",
|
||||
"map_marker_for_images": "Marcador de mapa para imaxes tomadas en {city}, {country}",
|
||||
"map_marker_with_image": "Marcador de mapa con imaxe",
|
||||
"map_no_assets_in_bounds": "Non hai fotos nesta área",
|
||||
"map_no_location_permission_content": "Necesítase permiso de ubicación para mostrar activos da súa ubicación actual. Queres permitilo agora?",
|
||||
"map_no_location_permission_title": "Permiso de ubicación denegado",
|
||||
"map_settings": "Configuración do mapa",
|
||||
|
||||
104
i18n/he.json
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "הוספת מיקום",
|
||||
"add_a_name": "הוספת שם",
|
||||
"add_a_title": "הוספת כותרת",
|
||||
"add_birthday": "הוספת יום הולדת",
|
||||
"add_endpoint": "הוסף נקודת קצה",
|
||||
"add_exclusion_pattern": "הוספת דפוס החרגה",
|
||||
"add_import_path": "הוספת נתיב יבוא",
|
||||
@@ -44,6 +45,13 @@
|
||||
"backup_database": "גיבוי מסד נתונים",
|
||||
"backup_database_enable_description": "אפשר גיבויי מסד נתונים",
|
||||
"backup_keep_last_amount": "כמות של גיבויים קודמים שיש לשמור",
|
||||
"backup_onboarding_1_description": "העתק בענן או במיקום פיזי אחר מחוץ למקום השרת.",
|
||||
"backup_onboarding_2_description": "העתקים מקומיים במכשירים שונים. זה כולל את הקבצים הראשיים וגיבוי של הקבצים האלה באופן מקומי.",
|
||||
"backup_onboarding_3_description": "סך כל ההעתקים של הנתונים שלך, כולל הקבצים המקוריים. זה כולל העתק אחד מחוץ למקום השרת ושני העתקים מקומיים.",
|
||||
"backup_onboarding_description": "<backblaze-link>אסטרטגיית גיבוי 3-2-1</backblaze-link> הינה מומלצת על מנת להגן על הנתונים שלך. עליך להשאיר העתקים של תמונות/סרטונים שהועלו כמו גם את מסד הנתונים של Immich עבור פתרון גיבוי מקיף.",
|
||||
"backup_onboarding_footer": "עבור מידע נוסף על גיבוי Immich, נא לפנות אל ה<link>תיעוד</link>.",
|
||||
"backup_onboarding_parts_title": "גיבוי 3-2-1 כולל:",
|
||||
"backup_onboarding_title": "גיבויים",
|
||||
"backup_settings": "הגדרות גיבוי",
|
||||
"backup_settings_description": "ניהול הגדרות גיבוי מסד נתונים.",
|
||||
"cleared_jobs": "נוקו משימות עבור: {job}",
|
||||
@@ -156,15 +164,15 @@
|
||||
"map_settings": "מפה",
|
||||
"map_settings_description": "ניהול הגדרות מפה",
|
||||
"map_style_description": "כתובת אתר לערכת נושא של מפה style.json",
|
||||
"memory_cleanup_job": "ניקוי זיכרון",
|
||||
"memory_generate_job": "יצירת זיכרון",
|
||||
"memory_cleanup_job": "ניקוי זיכרון (היום לפני..)",
|
||||
"memory_generate_job": "יצירת זיכרון (היום לפני..)",
|
||||
"metadata_extraction_job": "חלץ מטא-נתונים",
|
||||
"metadata_extraction_job_description": "חלץ מטא-נתונים מכל תמונה, כגון GPS, פנים ורזולוציה",
|
||||
"metadata_faces_import_setting": "אפשר יבוא פנים",
|
||||
"metadata_faces_import_setting_description": "יבא פנים מנתוני EXIF של תמונה ומקבצים נלווים",
|
||||
"metadata_settings": "הגדרות מטא-נתונים",
|
||||
"metadata_settings_description": "ניהול הגדרות מטא-נתונים",
|
||||
"migration_job": "העברה",
|
||||
"metadata_settings_description": "ניהול הגדרות metadata",
|
||||
"migration_job": "נדידה",
|
||||
"migration_job_description": "העבר תמונות ממוזערות של תמונות ופנים למבנה התיקיות העדכני ביותר",
|
||||
"nightly_tasks_cluster_faces_setting_description": "בצע זיהוי פנים עבור פרצופים שזוהו לאחרונה",
|
||||
"nightly_tasks_cluster_new_faces_setting": "קבץ פנים חדשות",
|
||||
@@ -178,7 +186,7 @@
|
||||
"nightly_tasks_settings_description": "נהל משימות ליליות",
|
||||
"nightly_tasks_start_time_setting": "זמן התחלה",
|
||||
"nightly_tasks_start_time_setting_description": "השעה שבה השרת מתחיל להריץ את המשימות הליליות",
|
||||
"nightly_tasks_sync_quota_usage_setting": "סנכרן את השימוש באחסון",
|
||||
"nightly_tasks_sync_quota_usage_setting": "סנכרון מכסת שימוש",
|
||||
"nightly_tasks_sync_quota_usage_setting_description": "עדכן את מכסת האחסון של המשתמש בהתאם לשימוש הנוכחי",
|
||||
"no_paths_added": "לא נוספו נתיבים",
|
||||
"no_pattern_added": "לא נוספה תבנית",
|
||||
@@ -210,6 +218,8 @@
|
||||
"oauth_mobile_redirect_uri": "URI להפניה מחדש בנייד",
|
||||
"oauth_mobile_redirect_uri_override": "עקיפת URI להפניה מחדש בנייד",
|
||||
"oauth_mobile_redirect_uri_override_description": "אפשר כאשר ספק OAuth לא מאפשר כתובת URI לנייד, כמו ''{callback}''",
|
||||
"oauth_role_claim": "דרישת תפקיד",
|
||||
"oauth_role_claim_description": "הענק גישת מנהל באופן אוטומטי אם תביעה זו קיימת. ערך התביעה יכול להיות 'user' או 'admin'.",
|
||||
"oauth_settings": "OAuth",
|
||||
"oauth_settings_description": "ניהול הגדרות התחברות עם OAuth",
|
||||
"oauth_settings_more_details": "למידע נוסף אודות תכונה זו, בדוק את ה<link>תיעוד</link>.",
|
||||
@@ -371,10 +381,12 @@
|
||||
"admin_password": "סיסמת מנהל",
|
||||
"administration": "ניהול",
|
||||
"advanced": "מתקדם",
|
||||
"advanced_settings_beta_timeline_subtitle": "נסה את חווית האפליקציה החדשה",
|
||||
"advanced_settings_beta_timeline_title": "ציר זמן (בטא)",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "השתמש באפשרות זו כדי לסנן מדיה במהלך הסנכרון לפי קריטריונים חלופיים. מומלץ להשתמש בזה רק אם יש בעיה בזיהוי כל האלבומים באפליקציה.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[ניסיוני] השתמש במסנן סנכרון אלבום חלופי שמבכשיר",
|
||||
"advanced_settings_log_level_title": "רמת רישום ביומן: {level}",
|
||||
"advanced_settings_prefer_remote_subtitle": "חלק מהמכשירים הם איטיים מאד לטעינה של תמונות ממוזערות מתמונות שבמכשיר. הפעל הגדרה זו כדי לטעון תמונות מרוחקות במקום.",
|
||||
"advanced_settings_prefer_remote_subtitle": "במכשירים מסוימים טעינת תמונות ממוזערות מקבצים מקומיים עלולה להיות איטית במיוחד. הפעל הגדרה זו כדי לטעון תמונות מרוחקות במקום זאת.",
|
||||
"advanced_settings_prefer_remote_title": "העדף תמונות מרוחקות",
|
||||
"advanced_settings_proxy_headers_subtitle": "הגדר proxy headers שהיישום צריך לשלוח עם כל בקשת רשת",
|
||||
"advanced_settings_proxy_headers_title": "כותרות פרוקסי",
|
||||
@@ -393,6 +405,7 @@
|
||||
"album_cover_updated": "עטיפת האלבום עודכנה",
|
||||
"album_delete_confirmation": "האם באמת ברצונך למחוק את האלבום {album}?",
|
||||
"album_delete_confirmation_description": "אם האלבום הזה משותף, משתמשים אחרים לא יוכלו לגשת אליו יותר.",
|
||||
"album_deleted": "אלבום נמחק",
|
||||
"album_info_card_backup_album_excluded": "הוחרגו",
|
||||
"album_info_card_backup_album_included": "נכללו",
|
||||
"album_info_updated": "מידע האלבום עודכן",
|
||||
@@ -402,6 +415,7 @@
|
||||
"album_options": "אפשרויות האלבום",
|
||||
"album_remove_user": "להסיר משתמש?",
|
||||
"album_remove_user_confirmation": "האם באמת ברצונך להסיר את {user}?",
|
||||
"album_search_not_found": "לא נמצאו אלבומים התואמים לחיפוש שלך",
|
||||
"album_share_no_users": "נראה ששיתפת את האלבום הזה עם כל המשתמשים או שאין לך אף משתמש לשתף איתו.",
|
||||
"album_updated": "אלבום עודכן",
|
||||
"album_updated_setting_description": "קבל הודעת דוא\"ל כאשר לאלבום משותף יש תמונות חדשות",
|
||||
@@ -421,6 +435,7 @@
|
||||
"albums_default_sort_order": "סדר מיון אלבומים ברירת מחדל",
|
||||
"albums_default_sort_order_description": "סדר מיון תמונות ראשוני בעת יצירת אלבומים חדשים.",
|
||||
"albums_feature_description": "אוספים של תמונות אשר ניתנים לשיתוף עם משתמשים אחרים.",
|
||||
"albums_on_device_count": "אלבומים במכשיר ({count})",
|
||||
"all": "הכל",
|
||||
"all_albums": "כל האלבומים",
|
||||
"all_people": "כל האנשים",
|
||||
@@ -476,7 +491,7 @@
|
||||
"asset_uploading": "מעלה…",
|
||||
"asset_viewer_settings_subtitle": "ניהול הגדרות מציג הגלריה שלך",
|
||||
"asset_viewer_settings_title": "מציג התמונות",
|
||||
"assets": "תמונות",
|
||||
"assets": "תמונות וסרטונים",
|
||||
"assets_added_count": "{count, plural, one {נוספה תומנה #} other {נוספו # תמונות}}",
|
||||
"assets_added_to_album_count": "{count, plural, one {נוספה תמונה #} other {נוספו # תמונות}} לאלבום",
|
||||
"assets_cannot_be_added_to_album_count": "לא ניתן להוסיף את ה{count, plural, one {תמונה} other {תמונות}} לאלבום",
|
||||
@@ -504,6 +519,7 @@
|
||||
"back_close_deselect": "חזור, סגור, או בטל בחירה",
|
||||
"background_location_permission": "הרשאת מיקום ברקע",
|
||||
"background_location_permission_content": "כדי להחליף רשתות בעת ריצה ברקע, היישום צריך *תמיד* גישה למיקום מדויק על מנת לקרוא את השם של רשת האינטרנט האלחוטי",
|
||||
"backup": "גיבוי",
|
||||
"backup_album_selection_page_albums_device": "({count}) אלבומים במכשיר",
|
||||
"backup_album_selection_page_albums_tap": "הקש כדי לכלול, הקש פעמיים כדי להחריג",
|
||||
"backup_album_selection_page_assets_scatter": "תמונות יכולות להתפזר על פני אלבומים מרובים. לפיכך, ניתן לכלול או להחריג אלבומים במהלך תהליך הגיבוי.",
|
||||
@@ -548,11 +564,11 @@
|
||||
"backup_controller_page_none_selected": "אין בחירה",
|
||||
"backup_controller_page_remainder": "בהמתנה לגיבוי",
|
||||
"backup_controller_page_remainder_sub": "תמונות וסרטונים הנותרים לגיבוי מתוך בחירה",
|
||||
"backup_controller_page_server_storage": "אחסון שרת",
|
||||
"backup_controller_page_server_storage": "אחסון בשרת",
|
||||
"backup_controller_page_start_backup": "התחל גיבוי",
|
||||
"backup_controller_page_status_off": "גיבוי חזית אוטומטי כבוי",
|
||||
"backup_controller_page_status_on": "גיבוי חזית אוטומטי מופעל",
|
||||
"backup_controller_page_storage_format": "{total} מתוך {used} בשימוש",
|
||||
"backup_controller_page_storage_format": "{used}מתוך {total} בשימוש",
|
||||
"backup_controller_page_to_backup": "אלבומים לגבות",
|
||||
"backup_controller_page_total_sub": "כל התמונות והסרטונים הייחודיים מאלבומים שנבחרו",
|
||||
"backup_controller_page_turn_off": "כיבוי גיבוי חזית",
|
||||
@@ -564,9 +580,13 @@
|
||||
"backup_manual_in_progress": "העלאה כבר בתהליך. נסה אחרי זמן מה",
|
||||
"backup_manual_success": "הצלחה",
|
||||
"backup_manual_title": "מצב העלאה",
|
||||
"backup_options": "אפשרויות גיבוי",
|
||||
"backup_options_page_title": "אפשרויות גיבוי",
|
||||
"backup_setting_subtitle": "ניהול הגדרות העלאת רקע וחזית",
|
||||
"backup_settings_subtitle": "נהל הגדרות העלאה",
|
||||
"backward": "אחורה",
|
||||
"beta_sync": "סטטוס סנכרון (בטא)",
|
||||
"beta_sync_subtitle": "נהל את מערכת הסנכרון החדשה",
|
||||
"biometric_auth_enabled": "אימות ביומטרי הופעל",
|
||||
"biometric_locked_out": "גישה לאימות הביומטרי נחסמה",
|
||||
"biometric_no_options": "אין אפשרויות זמינות עבור אימות ביומטרי",
|
||||
@@ -584,7 +604,7 @@
|
||||
"cache_settings_clear_cache_button": "ניקוי מטמון",
|
||||
"cache_settings_clear_cache_button_title": "מנקה את המטמון של היישום. זה ישפיע באופן משמעותי על הביצועים של היישום עד שהמטמון מתמלא מחדש.",
|
||||
"cache_settings_duplicated_assets_clear_button": "נקה",
|
||||
"cache_settings_duplicated_assets_subtitle": "תמונות וסרטונים שנמצאים ברשימה השחורה של היישום",
|
||||
"cache_settings_duplicated_assets_subtitle": "תמונות וסרטונים שנמצאים ברשימת ההתעלמות של האפליקציה",
|
||||
"cache_settings_duplicated_assets_title": "({count}) תמונות משוכפלות",
|
||||
"cache_settings_statistics_album": "תמונות ממוזערות של ספרייה",
|
||||
"cache_settings_statistics_full": "תמונות מלאות",
|
||||
@@ -601,6 +621,7 @@
|
||||
"cancel": "ביטול",
|
||||
"cancel_search": "ביטול חיפוש",
|
||||
"canceled": "בוטל",
|
||||
"canceling": "מבטל",
|
||||
"cannot_merge_people": "לא ניתן למזג אנשים",
|
||||
"cannot_undo_this_action": "אין באפשרותך לבטל את הפעולה הזו!",
|
||||
"cannot_update_the_description": "לא ניתן לעדכן את התיאור",
|
||||
@@ -632,6 +653,7 @@
|
||||
"clear": "נקה",
|
||||
"clear_all": "נקה הכל",
|
||||
"clear_all_recent_searches": "נקה את כל החיפושים האחרונים",
|
||||
"clear_file_cache": "נקה קבצי מטמון",
|
||||
"clear_message": "נקה הודעה",
|
||||
"clear_value": "נקה ערך",
|
||||
"client_cert_dialog_msg_confirm": "בסדר",
|
||||
@@ -702,6 +724,7 @@
|
||||
"create_new_user": "צור משתמש חדש",
|
||||
"create_shared_album_page_share_add_assets": "הוסף תמונות",
|
||||
"create_shared_album_page_share_select_photos": "בחירת תמונות",
|
||||
"create_shared_link": "צור קישור משותף",
|
||||
"create_tag": "צור תג",
|
||||
"create_tag_description": "צור תג חדש. עבור תגים מקוננים, נא להזין את הנתיב המלא של התג כולל קווים נטויים.",
|
||||
"create_user": "צור משתמש",
|
||||
@@ -714,6 +737,7 @@
|
||||
"current_server_address": "כתובת שרת נוכחית",
|
||||
"custom_locale": "אזור שפה מותאם אישית",
|
||||
"custom_locale_description": "עצב תאריכים ומספרים על סמך השפה והאזור",
|
||||
"custom_url": "קישור מותאם אישית",
|
||||
"daily_title_text_date": "E, MMM dd",
|
||||
"daily_title_text_date_year": "E, MMM dd, yyyy",
|
||||
"dark": "כהה",
|
||||
@@ -733,7 +757,8 @@
|
||||
"default_locale": "שפת ברירת מחדל",
|
||||
"default_locale_description": "פורמט תאריכים ומספרים מבוסס שפת הדפדפן שלך",
|
||||
"delete": "מחק",
|
||||
"delete_action_prompt": "{count} נמחקו לצמיתות",
|
||||
"delete_action_confirmation_message": "האם אתה בטוח שברצונך למחוק את התמונה הזאת? פעולה זו תעביר אותו לאשפה של השרת, ותשאל אם ברצונך למחוק אותו גם מהמכשיר המקומי",
|
||||
"delete_action_prompt": "{count} נמחקו",
|
||||
"delete_album": "מחק אלבום",
|
||||
"delete_api_key_prompt": "האם אתה בטוח שברצונך למחוק מפתח ה-API הזה?",
|
||||
"delete_dialog_alert": "הפריטים האלה ימחקו לצמיתות מהשרת ומהמכשיר שלך",
|
||||
@@ -747,9 +772,12 @@
|
||||
"delete_key": "מחק מפתח",
|
||||
"delete_library": "מחק ספרייה",
|
||||
"delete_link": "מחק קישור",
|
||||
"delete_local_action_prompt": "{count} נמחקו באופן מקומי",
|
||||
"delete_local_dialog_ok_backed_up_only": "מחק את מה שמגובה בלבד",
|
||||
"delete_local_dialog_ok_force": "מחק בכל זאת",
|
||||
"delete_others": "מחק אחרים",
|
||||
"delete_permanently": "מחק לצמיתות",
|
||||
"delete_permanently_action_prompt": "{count} נמחקו לצמיתות",
|
||||
"delete_shared_link": "מחק קישור משותף",
|
||||
"delete_shared_link_dialog_title": "מחק קישור משותף",
|
||||
"delete_tag": "מחק תג",
|
||||
@@ -760,6 +788,7 @@
|
||||
"description": "תיאור",
|
||||
"description_input_hint_text": "הוסף תיאור...",
|
||||
"description_input_submit_error": "שגיאה בעדכון תיאור, בדוק את היומן לפרטים נוספים",
|
||||
"deselect_all": "בטל הכל",
|
||||
"details": "פרטים",
|
||||
"direction": "כיוון",
|
||||
"disabled": "מושבת",
|
||||
@@ -777,6 +806,7 @@
|
||||
"documentation": "תיעוד",
|
||||
"done": "סיום",
|
||||
"download": "הורדה",
|
||||
"download_action_prompt": "מוריד {count} תמונות",
|
||||
"download_canceled": "הורדה בוטלה",
|
||||
"download_complete": "הורדה הושלמה",
|
||||
"download_enqueue": "הורדה נוספה לתור",
|
||||
@@ -803,6 +833,7 @@
|
||||
"edit": "ערוך",
|
||||
"edit_album": "ערוך אלבום",
|
||||
"edit_avatar": "ערוך תמונת פרופיל",
|
||||
"edit_birthday": "עריכת יום הולדת",
|
||||
"edit_date": "ערוך תאריך",
|
||||
"edit_date_and_time": "ערוך תאריך ושעה",
|
||||
"edit_description": "ערוך תיאור",
|
||||
@@ -833,6 +864,7 @@
|
||||
"empty_trash": "רוקן אשפה",
|
||||
"empty_trash_confirmation": "האם באמת ברצונך לרוקן את האשפה? זה יסיר לצמיתות את כל התמונות מהאשפה של השרת.\nאין באפשרותך לבטל פעולה זו!",
|
||||
"enable": "אפשר",
|
||||
"enable_backup": "הפעל גיבוי",
|
||||
"enable_biometric_auth_description": "הזן את קוד ה־PIN שלך כדי להפעיל אימות ביומטרי",
|
||||
"enabled": "מופעל",
|
||||
"end_date": "תאריך סיום",
|
||||
@@ -969,13 +1001,11 @@
|
||||
},
|
||||
"exif": "Exif",
|
||||
"exif_bottom_sheet_description": "הוסף תיאור...",
|
||||
"exif_bottom_sheet_description_error": "שגיאה בעדכון התיאור",
|
||||
"exif_bottom_sheet_details": "פרטים",
|
||||
"exif_bottom_sheet_location": "מיקום",
|
||||
"exif_bottom_sheet_people": "אנשים",
|
||||
"exif_bottom_sheet_person_add_person": "הוסף שם",
|
||||
"exif_bottom_sheet_person_age_months": "גיל {months} חודשים",
|
||||
"exif_bottom_sheet_person_age_year_months": "גיל שנה ו-{months} חודשים",
|
||||
"exif_bottom_sheet_person_age_years": "גיל {years}",
|
||||
"exit_slideshow": "צא ממצגת שקופיות",
|
||||
"expand_all": "הרחב הכל",
|
||||
"experimental_settings_new_asset_list_subtitle": "עבודה בתהליך",
|
||||
@@ -989,6 +1019,8 @@
|
||||
"explorer": "סייר",
|
||||
"export": "ייצוא",
|
||||
"export_as_json": "ייצוא כ-JSON",
|
||||
"export_database": "ייצא מסד נתונים",
|
||||
"export_database_description": "ייצא מסד נתונים SQL",
|
||||
"extension": "סיומת",
|
||||
"external": "חיצוני",
|
||||
"external_libraries": "ספריות חיצוניות",
|
||||
@@ -1040,6 +1072,9 @@
|
||||
"haptic_feedback_switch": "אפשר משוב ברטט",
|
||||
"haptic_feedback_title": "משוב ברטט",
|
||||
"has_quota": "יש מכסה",
|
||||
"hash_asset": "גיבוב תמונה",
|
||||
"hashed_assets": "תמונות מגובבות",
|
||||
"hashing": "מגבב",
|
||||
"header_settings_add_header_tip": "הוסף כותרת",
|
||||
"header_settings_field_validator_msg": "ערך אינו יכול להיות ריק",
|
||||
"header_settings_header_name_input": "שם כותרת",
|
||||
@@ -1072,6 +1107,7 @@
|
||||
"host": "מארח",
|
||||
"hour": "שעה",
|
||||
"id": "מזהה",
|
||||
"idle": "ממתין",
|
||||
"ignore_icloud_photos": "התעלם מתמונות iCloud",
|
||||
"ignore_icloud_photos_description": "תמונות שמאוחסנות ב-iCloud לא יועלו לשרת",
|
||||
"image": "תמונה",
|
||||
@@ -1129,6 +1165,7 @@
|
||||
"language_no_results_title": "לא נמצאה שפה",
|
||||
"language_search_hint": "חפש שפות...",
|
||||
"language_setting_description": "בחר את השפה המועדפת עליך",
|
||||
"large_files": "קבצים גדולים",
|
||||
"last_seen": "נראה לאחרונה",
|
||||
"latest_version": "גרסה עדכנית ביותר",
|
||||
"latitude": "קו רוחב",
|
||||
@@ -1144,16 +1181,18 @@
|
||||
"library_page_sort_created": "תאריך יצירה",
|
||||
"library_page_sort_last_modified": "שונה לאחרונה",
|
||||
"library_page_sort_title": "כותרת אלבום",
|
||||
"licenses": "רישיונות",
|
||||
"light": "בהיר",
|
||||
"like_deleted": "לייק נמחק",
|
||||
"link_motion_video": "קשר סרטון תנועה",
|
||||
"link_options": "אפשרויות קישור",
|
||||
"link_to_oauth": "קישור ל-OAuth",
|
||||
"linked_oauth_account": "חשבון OAuth מקושר",
|
||||
"list": "רשימה",
|
||||
"loading": "טוען",
|
||||
"loading_search_results_failed": "טעינת תוצאות החיפוש נכשלה",
|
||||
"local": "מקומי",
|
||||
"local_asset_cast_failed": "לא ניתן לשדר תמונה שלא הועלתה לשרת",
|
||||
"local_assets": "תמונות מקומיות",
|
||||
"local_network": "רשת מקומית",
|
||||
"local_network_sheet_info": "היישום יתחבר לשרת דרך הכתובת הזאת כאשר משתמשים ברשת האינטרנט האלחוטי שמצוינת",
|
||||
"location_permission": "הרשאת מיקום",
|
||||
@@ -1210,8 +1249,7 @@
|
||||
"manage_your_devices": "ניהול המכשירים המחוברים שלך",
|
||||
"manage_your_oauth_connection": "ניהול חיבור ה-OAuth שלך",
|
||||
"map": "מפה",
|
||||
"map_assets_in_bound": "תמונה {count}",
|
||||
"map_assets_in_bounds": "{count} תמונות",
|
||||
"map_assets_in_bounds": "{count, plural, one {תמונה #} other {# תמונות}}",
|
||||
"map_cannot_get_user_location": "לא ניתן לקבוע את מיקום המשתמש",
|
||||
"map_location_dialog_yes": "כן",
|
||||
"map_location_picker_page_use_location": "השתמש במיקום הזה",
|
||||
@@ -1219,7 +1257,6 @@
|
||||
"map_location_service_disabled_title": "שירות מיקום מבוטל",
|
||||
"map_marker_for_images": "סמן מפה לתמונות שצולמו ב{city}, {country}",
|
||||
"map_marker_with_image": "סמן מפה עם תמונה",
|
||||
"map_no_assets_in_bounds": "אין תמונות באזור זה",
|
||||
"map_no_location_permission_content": "יש צורך בהרשאה למיקום כדי להציג תמונות מהמיקום הנוכחי שלך. האם ברצונך לאפשר זאת עכשיו?",
|
||||
"map_no_location_permission_title": "הרשאה למיקום נדחתה",
|
||||
"map_settings": "הגדרות מפה",
|
||||
@@ -1245,7 +1282,7 @@
|
||||
"memories_setting_description": "נהל את מה שרואים בזכרונות שלך",
|
||||
"memories_start_over": "התחל מחדש",
|
||||
"memories_swipe_to_close": "החלק למעלה כדי לסגור",
|
||||
"memory": "זיכרון",
|
||||
"memory": "זיכרון (היום לפני..)",
|
||||
"memory_lane_title": "משעול הזיכרונות {title}",
|
||||
"menu": "תפריט",
|
||||
"merge": "מזג",
|
||||
@@ -1275,6 +1312,9 @@
|
||||
"my_albums": "האלבומים שלי",
|
||||
"name": "שם",
|
||||
"name_or_nickname": "שם או כינוי",
|
||||
"network_requirement_photos_upload": "השתמש בנתונים ניידים לגיבוי תמונות",
|
||||
"network_requirement_videos_upload": "השתמש בנתונים ניידים לגיבוי סרטונים",
|
||||
"network_requirements_updated": "דרישות הרשת השתנו, תור הגיבוי אופס",
|
||||
"networking_settings": "רשת",
|
||||
"networking_subtitle": "ניהול הגדרות נקודת קצה שרת",
|
||||
"never": "אף פעם",
|
||||
@@ -1310,6 +1350,7 @@
|
||||
"no_results": "אין תוצאות",
|
||||
"no_results_description": "נסה להשתמש במילה נרדפת או במילת מפתח יותר כללית",
|
||||
"no_shared_albums_message": "צור אלבום כדי לשתף תמונות וסרטונים עם אנשים ברשת שלך",
|
||||
"no_uploads_in_progress": "אין העלאות בתהליך",
|
||||
"not_in_any_album": "לא בשום אלבום",
|
||||
"not_selected": "לא נבחרו",
|
||||
"note_apply_storage_label_to_previously_uploaded assets": "הערה: כדי להחיל את תווית האחסון על תמונות שהועלו בעבר, הפעל את",
|
||||
@@ -1347,6 +1388,7 @@
|
||||
"original": "מקורי",
|
||||
"other": "אחר",
|
||||
"other_devices": "מכשירים אחרים",
|
||||
"other_entities": "ישויות אחרות",
|
||||
"other_variables": "משתנים אחרים",
|
||||
"owned": "בבעלות",
|
||||
"owner": "בעלים",
|
||||
@@ -1478,6 +1520,7 @@
|
||||
"purchase_server_description_2": "מעמד תומך",
|
||||
"purchase_server_title": "שרת",
|
||||
"purchase_settings_server_activated": "מפתח המוצר של השרת מנוהל על ידי מנהל המערכת",
|
||||
"queue_status": "בתור {count}/{total}",
|
||||
"rating": "דירוג כוכב",
|
||||
"rating_clear": "נקה דירוג",
|
||||
"rating_count": "{count, plural, one {כוכב #} other {# כוכבים}}",
|
||||
@@ -1506,6 +1549,8 @@
|
||||
"refreshing_faces": "מרענן פרצופים",
|
||||
"refreshing_metadata": "מרענן מטא-נתונים",
|
||||
"regenerating_thumbnails": "מחדש תמונות ממוזערות",
|
||||
"remote": "מרוחק",
|
||||
"remote_assets": "תמונות מרוחקות",
|
||||
"remove": "הסר",
|
||||
"remove_assets_album_confirmation": "האם באמת ברצונך להסיר {count, plural, one {תמונה #} other {# תמונות}} מהאלבום?",
|
||||
"remove_assets_shared_link_confirmation": "האם אתה בטוח שברצונך להסיר {count, plural, one {תמונה #} other {# תמונות}} מהקישור המשותף הזה?",
|
||||
@@ -1543,19 +1588,25 @@
|
||||
"reset_password": "איפוס סיסמה",
|
||||
"reset_people_visibility": "אפס את נראות האנשים",
|
||||
"reset_pin_code": "אפס קוד PIN",
|
||||
"reset_sqlite": "אפס את מסד הנתונים SQLite",
|
||||
"reset_sqlite_confirmation": "האם אתה בטוח שברצונך לאפס את מסד הנתונים SQLite? יהיה עליך להתנתק ולהתחבר מחדש כדי לסנכרן את הנתונים מחדש",
|
||||
"reset_sqlite_success": "איפוס מסד הנתונים SQLite בוצע בהצלחה",
|
||||
"reset_to_default": "אפס לברירת מחדל",
|
||||
"resolve_duplicates": "פתור כפילויות",
|
||||
"resolved_all_duplicates": "כל הכפילויות נפתרו",
|
||||
"restore": "שחזר",
|
||||
"restore_all": "שחזר הכל",
|
||||
"restore_trash_action_prompt": "{count} שוחזרו מהשאפה",
|
||||
"restore_user": "שחזר משתמש",
|
||||
"restored_asset": "התמונה שוחזרה",
|
||||
"resume": "המשך",
|
||||
"retry_upload": "נסה שוב להעלות",
|
||||
"review_duplicates": "בדוק כפילויות",
|
||||
"review_large_files": "צפייה בקבצים גדולים",
|
||||
"role": "תפקיד",
|
||||
"role_editor": "עורך",
|
||||
"role_viewer": "צופה",
|
||||
"running": "פועל",
|
||||
"save": "שמור",
|
||||
"save_to_gallery": "שמור לגלריה",
|
||||
"saved_api_key": "מפתח API שמור",
|
||||
@@ -1687,6 +1738,7 @@
|
||||
"settings_saved": "ההגדרות נשמרו",
|
||||
"setup_pin_code": "הגדר קוד PIN",
|
||||
"share": "שתף",
|
||||
"share_action_prompt": "שותפו {count} תמונות",
|
||||
"share_add_photos": "הוסף תמונות",
|
||||
"share_assets_selected": "{count} נבחרו",
|
||||
"share_dialog_preparing": "מכין...",
|
||||
@@ -1708,6 +1760,7 @@
|
||||
"shared_link_clipboard_copied_massage": "הועתק ללוח",
|
||||
"shared_link_clipboard_text": "קישור: {password}\nסיסמה: {link}",
|
||||
"shared_link_create_error": "שגיאה ביצירת קישור משותף",
|
||||
"shared_link_custom_url_description": "גש לקישור ששותף באמצעות כתובת URL מותאמת אישית",
|
||||
"shared_link_edit_description_hint": "הכנס את תיאור השיתוף",
|
||||
"shared_link_edit_expire_after_option_day": "1 יום",
|
||||
"shared_link_edit_expire_after_option_days": "{count} ימים",
|
||||
@@ -1733,6 +1786,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "ניהול קישורים משותפים",
|
||||
"shared_link_options": "אפשרויות קישור משותף",
|
||||
"shared_link_password_description": "דרוש סיסמה כדי לגשת לקישור המשותף הזה",
|
||||
"shared_links": "קישורים משותפים",
|
||||
"shared_links_description": "שתף תמונות וסרטונים עם קישור",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, other {# תמונות וסרטונים משותפים.}}",
|
||||
@@ -1788,6 +1842,7 @@
|
||||
"sort_title": "כותרת",
|
||||
"source": "קוד מקור",
|
||||
"stack": "ערימה",
|
||||
"stack_action_prompt": "{count} קובצו",
|
||||
"stack_duplicates": "צור ערימת כפילויות",
|
||||
"stack_select_one_photo": "בחר תמונה ראשית אחת עבור הערימה",
|
||||
"stack_selected_photos": "צור ערימת תמונות נבחרות",
|
||||
@@ -1807,6 +1862,7 @@
|
||||
"storage_quota": "מכסת האחסון",
|
||||
"storage_usage": "{used} בשימוש מתוך {available}",
|
||||
"submit": "שלח",
|
||||
"success": "בוצע בהצלחה",
|
||||
"suggestions": "הצעות",
|
||||
"sunrise_on_the_beach": "Sunrise on the beach (מומלץ לחפש באנגלית לתוצאות טובות יותר)",
|
||||
"support": "תמיכה",
|
||||
@@ -1816,6 +1872,8 @@
|
||||
"sync": "סנכרן",
|
||||
"sync_albums": "סנכרן אלבומים",
|
||||
"sync_albums_manual_subtitle": "סנכרן את כל הסרטונים והתמונות שהועלו לאלבומי הגיבוי שנבחרו",
|
||||
"sync_local": "סנכרן מקומי",
|
||||
"sync_remote": "סנכרן מרוחק",
|
||||
"sync_upload_album_setting_subtitle": "צור והעלה תמונות וסרטונים שלך לאלבומים שנבחרו ביישום",
|
||||
"tag": "תג",
|
||||
"tag_assets": "תיוג תמונות",
|
||||
@@ -1826,6 +1884,7 @@
|
||||
"tag_updated": "תג מעודכן: {tag}",
|
||||
"tagged_assets": "תויגו {count, plural, one {תמונה #} other {# תמונות}}",
|
||||
"tags": "תגים",
|
||||
"tap_to_run_job": "לחץ על מנת להפעיל משימה",
|
||||
"template": "תבנית",
|
||||
"theme": "ערכת נושא",
|
||||
"theme_selection": "בחירת ערכת נושא",
|
||||
@@ -1898,16 +1957,20 @@
|
||||
"unselect_all_duplicates": "בטל בחירת כל הכפילויות",
|
||||
"unselect_all_in": "בטל את הבחירה של הכל ב {group}",
|
||||
"unstack": "בטל ערימה",
|
||||
"unstack_action_prompt": "{count} הופרדו",
|
||||
"unstacked_assets_count": "{count, plural, one {תמונה # הוסרה} other {# תמונות הוסרו}} מהערימה",
|
||||
"untagged": "לא מתיוגים",
|
||||
"up_next": "הבא בתור",
|
||||
"updated_at": "עודכן",
|
||||
"updated_password": "סיסמה עודכנה",
|
||||
"upload": "העלאה",
|
||||
"upload_action_prompt": "{count} נוספו לתור להעלאה",
|
||||
"upload_concurrency": "בו-זמניות של העלאה",
|
||||
"upload_details": "פרטי העלאה",
|
||||
"upload_dialog_info": "האם ברצונך לגבות את התמונות שנבחרו לשרת?",
|
||||
"upload_dialog_title": "העלאת תמונה",
|
||||
"upload_errors": "העלאה הושלמה עם {count, plural, one {שגיאה #} other {# שגיאות}}, רענן את הדף כדי לראות תמונות שהועלו.",
|
||||
"upload_finished": "העלאה הסתיימה",
|
||||
"upload_progress": "נותרו {remaining, number} - טופלו {processed, number}/{total, number}",
|
||||
"upload_skipped_duplicates": "דילג על {count, plural, one {תמונה כפולה #} other {# תמונות כפולות}}",
|
||||
"upload_status_duplicates": "כפילויות",
|
||||
@@ -1916,6 +1979,7 @@
|
||||
"upload_success": "ההעלאה בוצעה בהצלחה. רענן את הדף כדי לצפות בתמונות שהועלו.",
|
||||
"upload_to_immich": "העלה לשרת ({count})",
|
||||
"uploading": "מעלה",
|
||||
"uploading_media": "מעלה מדיה",
|
||||
"url": "URL",
|
||||
"usage": "שימוש",
|
||||
"use_biometric": "השתמש באימות ביומטרי",
|
||||
@@ -1936,6 +2000,7 @@
|
||||
"user_usage_stats_description": "הצג סטטיסטיקות שימוש בחשבון",
|
||||
"username": "שם משתמש",
|
||||
"users": "משתמשים",
|
||||
"users_added_to_album_count": "נוספו {count, plural, one {משתמש #} other {# משתמשים}} לאלבום",
|
||||
"utilities": "כלים",
|
||||
"validate": "לאמת",
|
||||
"validate_endpoint_error": "נא להזין כתובת תקנית",
|
||||
@@ -1954,6 +2019,7 @@
|
||||
"view_album": "הצג אלבום",
|
||||
"view_all": "הצג הכל",
|
||||
"view_all_users": "הצג את כל המשתמשים",
|
||||
"view_details": "הצג פרטים",
|
||||
"view_in_timeline": "ראה בציר הזמן",
|
||||
"view_link": "הצג קישור",
|
||||
"view_links": "הצג קישורים",
|
||||
|
||||
301
i18n/hi.json
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "एक स्थान डालें",
|
||||
"add_a_name": "नाम डालें",
|
||||
"add_a_title": "एक शीर्षक डालें",
|
||||
"add_birthday": "अपने जन्मदिन का उल्लेख करें",
|
||||
"add_endpoint": "endpoint डालें",
|
||||
"add_exclusion_pattern": "अपवाद उदाहरण डालें",
|
||||
"add_import_path": "आयात पथ डालें",
|
||||
@@ -44,8 +45,15 @@
|
||||
"backup_database": "डेटाबेस डंप बनाएं",
|
||||
"backup_database_enable_description": "Enable database dumps",
|
||||
"backup_keep_last_amount": "रखने के लिए पिछले डंप की मात्रा",
|
||||
"backup_onboarding_1_description": "क्लाउड में या किसी अन्य भौतिक स्थान पर ऑफसाइट प्रतिलिपि।",
|
||||
"backup_onboarding_2_description": "विभिन्न उपकरणों पर स्थानीय प्रतियाँ। इसमें मुख्य फ़ाइलें और उन फ़ाइलों का स्थानीय बैकअप शामिल है।",
|
||||
"backup_onboarding_3_description": "आपके डेटा की कुल प्रतियाँ, जिनमें मूल फ़ाइलें भी शामिल हैं। इसमें 1 ऑफ़साइट प्रति और 2 स्थानीय प्रतियाँ शामिल हैं।",
|
||||
"backup_onboarding_description": "अपने डेटा की सुरक्षा के लिए <backblaze-link>3-2-1 बैकअप रणनीति</backblaze-link> की सिफारिश की जाती है। एक पूर्ण बैकअप समाधान के लिए, आपको अपलोड की गई फ़ोटो/वीडियो की प्रतियाँ और Immich डेटाबेस दोनों को सुरक्षित रखना चाहिए।",
|
||||
"backup_onboarding_footer": "Immich का बैकअप लेने से संबंधित अधिक जानकारी के लिए कृपया <link>प्रलेखन</link> देखें।",
|
||||
"backup_onboarding_parts_title": "3-2-1 बैकअप में शामिल हैं:",
|
||||
"backup_onboarding_title": "बैकअप्स",
|
||||
"backup_settings": "डेटाबेस डंप सेटिंग्स",
|
||||
"backup_settings_description": "डेटाबेस डंप सेटिंग्स प्रबंधित करें। ध्यान दें: इन कार्यों की निगरानी नहीं की जाती है और विफलता की स्थिति में आपको सूचित नहीं किया जाएगा।",
|
||||
"backup_settings_description": "डेटाबेस डंप सेटिंग्स प्रबंधित करें।",
|
||||
"cleared_jobs": "{job}: के लिए कार्य साफ़ कर दिए गए",
|
||||
"config_set_by_file": "Config वर्तमान में एक config फ़ाइल द्वारा सेट किया गया है",
|
||||
"confirm_delete_library": "क्या आप वाकई {library} लाइब्रेरी को हटाना चाहते हैं?",
|
||||
@@ -166,12 +174,26 @@
|
||||
"metadata_settings_description": "मेटाडेटा सेटिंग प्रबंधित करें",
|
||||
"migration_job": "प्रवास",
|
||||
"migration_job_description": "संपत्तियों और चेहरों के थंबनेल को नवीनतम फ़ोल्डर संरचना में माइग्रेट करें",
|
||||
"nightly_tasks_cluster_faces_setting_description": "नए पहचाने गए चेहरों पर चेहरे की पहचान चलाएँ",
|
||||
"nightly_tasks_cluster_new_faces_setting": "नए चेहरों को समूह में शामिल करें",
|
||||
"nightly_tasks_database_cleanup_setting": "डेटाबेस क्लीनअप कार्य",
|
||||
"nightly_tasks_database_cleanup_setting_description": "डेटाबेस से पुराना, समाप्त हो चुका डेटा साफ़ करें",
|
||||
"nightly_tasks_generate_memories_setting": "यादें उत्पन्न करें",
|
||||
"nightly_tasks_generate_memories_setting_description": "संपत्तियों से नई यादें बनाएँ",
|
||||
"nightly_tasks_missing_thumbnails_setting": "गायब थंबनेल उत्पन्न करें",
|
||||
"nightly_tasks_missing_thumbnails_setting_description": "थंबनेल निर्माण के लिए थंबनेल के बिना कतारबद्ध परिसंपत्तियाँ",
|
||||
"nightly_tasks_settings": "रात्रिकालीन कार्य सेटिंग्स",
|
||||
"nightly_tasks_settings_description": "रात्रिकालीन कार्यों का प्रबंधन करें",
|
||||
"nightly_tasks_start_time_setting": "समय शुरू",
|
||||
"nightly_tasks_start_time_setting_description": "वह समय जब सर्वर रात्रिकालीन कार्य चलाना शुरू करता है",
|
||||
"nightly_tasks_sync_quota_usage_setting": "सिंक कोटा उपयोग",
|
||||
"nightly_tasks_sync_quota_usage_setting_description": "वर्तमान उपयोग के आधार पर उपयोगकर्ता संग्रहण कोटा अपडेट करें",
|
||||
"no_paths_added": "कोई पथ नहीं डाला गया",
|
||||
"no_pattern_added": "कोई पैटर्न नहीं डाला गया",
|
||||
"note_apply_storage_label_previous_assets": "नोट: पहले अपलोड की गई संपत्तियों पर स्टोरेज लेबल लागू करने के लिए, चलाएँ",
|
||||
"note_cannot_be_changed_later": "नोट: इसे बाद में बदला नहीं जा सकता!",
|
||||
"notification_email_from_address": "इस पते से",
|
||||
"notification_email_from_address_description": "प्रेषक का ईमेल पता, उदाहरण के लिए: \"इमिच फोटो सर्वर <noreply@example.com>\"",
|
||||
"notification_email_from_address_description": "प्रेषक का ईमेल पता, उदाहरण के लिए: \"इमिच फोटो सर्वर <noreply@example.com>\"। यह सुनिश्चित करें कि आप उसी पते का उपयोग करें जिससे आपको ईमेल भेजने की अनुमति है।",
|
||||
"notification_email_host_description": "ईमेल सर्वर का होस्ट (उदा. smtp.immitch.app)",
|
||||
"notification_email_ignore_certificate_errors": "प्रमाणपत्र त्रुटियों पर ध्यान न दें",
|
||||
"notification_email_ignore_certificate_errors_description": "टीएलएस प्रमाणपत्र सत्यापन त्रुटियों पर ध्यान न दें (अनुशंसित नहीं)",
|
||||
@@ -195,7 +217,9 @@
|
||||
"oauth_enable_description": "OAuth से लॉगिन करें",
|
||||
"oauth_mobile_redirect_uri": "मोबाइल रीडायरेक्ट यूआरआई",
|
||||
"oauth_mobile_redirect_uri_override": "मोबाइल रीडायरेक्ट यूआरआई ओवरराइड",
|
||||
"oauth_mobile_redirect_uri_override_description": "सक्षम करें जब 'app.immitch:/' एक अमान्य रीडायरेक्ट यूआरआई हो।",
|
||||
"oauth_mobile_redirect_uri_override_description": "जब OAuth प्रदाता किसी मोबाइल URI, जैसे ''{callback}'' की अनुमति नहीं देता, तब सक्षम करें",
|
||||
"oauth_role_claim": "भूमिका का दावा",
|
||||
"oauth_role_claim_description": "इस दावे की उपस्थिति के आधार पर स्वचालित रूप से व्यवस्थापक पहुँच प्रदान करें। दावे में 'उपयोगकर्ता' या 'व्यवस्थापक' हो सकता है।",
|
||||
"oauth_settings": "ओऑथ",
|
||||
"oauth_settings_description": "OAuth लॉगिन सेटिंग प्रबंधित करें",
|
||||
"oauth_settings_more_details": "इस सुविधा के बारे में अधिक जानकारी के लिए, देखें <link>डॉक्स</link>।",
|
||||
@@ -204,7 +228,7 @@
|
||||
"oauth_storage_quota_claim": "भंडारण कोटा का दावा",
|
||||
"oauth_storage_quota_claim_description": "उपयोगकर्ता के संग्रहण कोटा को इस दावे के मूल्य पर स्वचालित रूप से सेट करें।",
|
||||
"oauth_storage_quota_default": "डिफ़ॉल्ट संग्रहण कोटा (GiB)",
|
||||
"oauth_storage_quota_default_description": "GiB में कोटा का उपयोग तब किया जाएगा जब कोई दावा प्रदान नहीं किया गया हो (असीमित कोटा के लिए 0 दर्ज करें)।",
|
||||
"oauth_storage_quota_default_description": "GiB में कोटा का उपयोग तब किया जाएगा जब कोई दावा प्रदान नहीं किया गया हो ।",
|
||||
"oauth_timeout": "ब्रेक का अनुरोध",
|
||||
"oauth_timeout_description": "अनुरोधों के लिए समय-सीमा मिलीसेकंड में",
|
||||
"password_enable_description": "ईमेल और पासवर्ड से लॉगिन करें",
|
||||
@@ -244,6 +268,7 @@
|
||||
"storage_template_migration_info": "स्टोरेज टेम्प्लेट सभी एक्सटेंशन को लोअरकेस में बदल देगा। टेम्प्लेट में किए गए बदलाव सिर्फ़ नई संपत्तियों पर लागू होंगे। टेम्प्लेट को पहले अपलोड की गई संपत्तियों पर पूर्वव्यापी रूप से लागू करने के लिए, <link>{job}</link> चलाएँ।",
|
||||
"storage_template_migration_job": "संग्रहण टेम्पलेट माइग्रेशन कार्य",
|
||||
"storage_template_more_details": "इस सुविधा के बारे में अधिक जानकारी के लिए, देखें <template-link>भंडारण टेम्पलेट</template-link> और इसके <implications-link>आशय</implications-link>",
|
||||
"storage_template_onboarding_description_v2": "सक्षम होने पर, यह सुविधा उपयोगकर्ता-निर्धारित टेम्पलेट के आधार पर फ़ाइलों को स्वतः व्यवस्थित करेगी। अधिक जानकारी के लिए, कृपया <link>दस्तावेज़ीकरण</link> देखें।",
|
||||
"storage_template_path_length": "अनुमानित पथ लंबाई सीमा: <b>{length, number}</b>/{limit, number}",
|
||||
"storage_template_settings": "भंडारण टेम्पलेट",
|
||||
"storage_template_settings_description": "अपलोड संपत्ति की फ़ोल्डर संरचना और फ़ाइल नाम प्रबंधित करें",
|
||||
@@ -356,10 +381,12 @@
|
||||
"admin_password": "व्यवस्थापक पासवर्ड",
|
||||
"administration": "प्रशासन",
|
||||
"advanced": "विकसित",
|
||||
"advanced_settings_beta_timeline_subtitle": "नए ऐप अनुभव को आज़माएँ",
|
||||
"advanced_settings_beta_timeline_title": "बीटा टाइमलाइन",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "सिंक के दौरान वैकल्पिक मानदंडों के आधार पर मीडिया को फ़िल्टर करने के लिए इस विकल्प का उपयोग करें। इसे केवल तभी आज़माएँ जब आपको ऐप द्वारा सभी एल्बमों का पता लगाने में समस्या हो।",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[प्रयोगात्मक] वैकल्पिक डिवाइस एल्बम सिंक फ़िल्टर का उपयोग करें",
|
||||
"advanced_settings_log_level_title": "लॉग स्तर:{level}",
|
||||
"advanced_settings_prefer_remote_subtitle": "कुछ डिवाइस पर मौजूद एसेट से थंबनेल लोड करने में काफ़ी समय लगता है। इसके बजाय रिमोट इमेज लोड करने के लिए इस सेटिंग को सक्रिय करें।",
|
||||
"advanced_settings_prefer_remote_subtitle": "कुछ डिवाइस स्थानीय एसेट से थंबनेल लोड करने में बहुत धीमे होते हैं। इसके बजाय, दूरस्थ इमेज लोड करने के लिए इस सेटिंग को सक्रिय करें।",
|
||||
"advanced_settings_prefer_remote_title": "दूरस्थ छवियों को प्राथमिकता दें",
|
||||
"advanced_settings_proxy_headers_subtitle": "प्रत्येक नेटवर्क अनुरोध के साथ इम्मिच द्वारा भेजे जाने वाले प्रॉक्सी हेडर को परिभाषित करें",
|
||||
"advanced_settings_proxy_headers_title": "प्रॉक्सी हेडर",
|
||||
@@ -378,6 +405,7 @@
|
||||
"album_cover_updated": "एल्बम कवर अपडेट किया गया",
|
||||
"album_delete_confirmation": "क्या आप वाकई एल्बम {album} हटाना चाहते हैं?",
|
||||
"album_delete_confirmation_description": "यदि यह एल्बम साझा किया गया है, तो अन्य उपयोगकर्ता इसे एक्सेस नहीं कर पाएंगे।",
|
||||
"album_deleted": "एल्बम हटा दिया गया",
|
||||
"album_info_card_backup_album_excluded": "छोड़ा गया",
|
||||
"album_info_card_backup_album_included": "शामिल",
|
||||
"album_info_updated": "एल्बम की जानकारी अपडेट की गई",
|
||||
@@ -387,6 +415,7 @@
|
||||
"album_options": "एल्बम विकल्प",
|
||||
"album_remove_user": "उपयोगकर्ता हटाएं?",
|
||||
"album_remove_user_confirmation": "क्या आप वाकई {user} को हटाना चाहते हैं?",
|
||||
"album_search_not_found": "आपकी खोज से मेल खाता कोई एल्बम नहीं मिला",
|
||||
"album_share_no_users": "ऐसा लगता है कि आपने यह एल्बम सभी उपयोगकर्ताओं के साथ साझा कर दिया है या आपके पास साझा करने के लिए कोई उपयोगकर्ता नहीं है।",
|
||||
"album_updated": "एल्बम अपडेट किया गया",
|
||||
"album_updated_setting_description": "जब किसी साझा एल्बम में नई संपत्तियाँ हों तो एक ईमेल सूचना प्राप्त करें",
|
||||
@@ -402,7 +431,11 @@
|
||||
"album_viewer_page_share_add_users": "उपयोगकर्ता जोड़ें",
|
||||
"album_with_link_access": "लिंक वाले किसी भी व्यक्ति को इस एल्बम में फ़ोटो और लोगों को देखने दें।",
|
||||
"albums": "एलबम",
|
||||
"albums_count": "{गिनती, बहुवचन, एक {{count, number} एल्बम} अन्य {{count, number} एल्बम}}",
|
||||
"albums_count": "{count, plural, one {{count, number} Album} other {{count, number} Albums}}",
|
||||
"albums_default_sort_order": "डिफ़ॉल्ट एल्बम सॉर्ट क्रम",
|
||||
"albums_default_sort_order_description": "नये एल्बम बनाते समय आरंभिक परिसंपत्ति सॉर्ट क्रम।",
|
||||
"albums_feature_description": "परिसंपत्तियों का संग्रह जिसे अन्य उपयोगकर्ताओं के साथ साझा किया जा सकता है।",
|
||||
"albums_on_device_count": "डिवाइस पर एल्बम ({count})",
|
||||
"all": "सभी",
|
||||
"all_albums": "सभी एलबम",
|
||||
"all_people": "सभी लोग",
|
||||
@@ -423,13 +456,14 @@
|
||||
"app_settings": "एप्लिकेशन सेटिंग",
|
||||
"appears_in": "प्रकट होता है",
|
||||
"archive": "संग्रहालय",
|
||||
"archive_action_prompt": "{count} को संग्रह में जोड़ा गया",
|
||||
"archive_or_unarchive_photo": "फ़ोटो को संग्रहीत या असंग्रहीत करें",
|
||||
"archive_page_no_archived_assets": "कोई संग्रहीत संपत्ति नहीं मिली",
|
||||
"archive_page_title": "पुरालेख ({count})",
|
||||
"archive_size": "पुरालेख आकार",
|
||||
"archive_size_description": "डाउनलोड के लिए संग्रह आकार कॉन्फ़िगर करें (GiB में)",
|
||||
"archived": "संग्रहित",
|
||||
"archived_count": "{गणना, बहुवचन, अन्य {संग्रहीत #}}",
|
||||
"archived_count": "{count, plural, other {# संग्रहीत किए गए}",
|
||||
"are_these_the_same_person": "क्या ये वही व्यक्ति हैं?",
|
||||
"are_you_sure_to_do_this": "क्या आप वास्तव में इसे करना चाहते हैं?",
|
||||
"asset_action_delete_err_read_only": "केवल पढ़ने योग्य परिसंपत्ति(ओं) को हटाया नहीं जा सकता, छोड़ा जा सकता है",
|
||||
@@ -442,73 +476,229 @@
|
||||
"asset_hashing": "हैशिंग...।",
|
||||
"asset_list_group_by_sub_title": "द्वारा समूह बनाएं",
|
||||
"asset_list_layout_settings_dynamic_layout_title": "गतिशील लेआउट",
|
||||
"asset_list_layout_settings_group_automatically": "स्वचालित",
|
||||
"asset_list_layout_settings_group_by": "समूह परिसंपत्तियों द्वारा",
|
||||
"asset_list_layout_settings_group_by_month_day": "महीना + दिन",
|
||||
"asset_list_layout_sub_title": "लेआउट",
|
||||
"asset_list_settings_subtitle": "फ़ोटो ग्रिड लेआउट सेटिंग्स",
|
||||
"asset_list_settings_title": "चित्र की जाली",
|
||||
"asset_offline": "संपत्ति ऑफ़लाइन",
|
||||
"asset_offline_description": "यह संपत्ति ऑफ़लाइन है।",
|
||||
"asset_restored_successfully": "संपत्ति(याँ) सफलतापूर्वक पुनर्स्थापित की गईं",
|
||||
"asset_skipped": "छोड़ा गया",
|
||||
"asset_skipped_in_trash": "कचरे में",
|
||||
"asset_uploaded": "अपलोड किए गए",
|
||||
"asset_uploading": "अपलोड हो रहा है..।",
|
||||
"asset_uploading": "अपलोड हो रहा है…",
|
||||
"asset_viewer_settings_subtitle": "अपनी गैलरी व्यूअर सेटिंग प्रबंधित करें",
|
||||
"asset_viewer_settings_title": "एसेट व्यूअर",
|
||||
"assets": "संपत्तियां",
|
||||
"assets_added_count": "{count, plural, one {# asset} other {# assets}} जोड़ा गया",
|
||||
"assets_added_to_album_count": "एल्बम में {count, plural, one {# asset} other {# assets}} जोड़ा गया",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {Asset} other {Assets}} को एल्बम में नहीं जोड़ा जा सकता",
|
||||
"assets_count": "{count, plural, one {# आइटम} other {# आइटम्स}}",
|
||||
"assets_deleted_permanently": "{count} संपत्ति(याँ) स्थायी रूप से हटा दी गईं",
|
||||
"assets_deleted_permanently_from_server": "{count} संपत्ति(याँ) इमिच सर्वर से स्थायी रूप से हटा दी गईं",
|
||||
"assets_downloaded_failed": "{count, plural, one {Downloaded # file - {error} file failed} other {Downloaded # files - {error} files failed}}",
|
||||
"assets_downloaded_successfully": "{count, plural, one {# फ़ाइल सफलतापूर्वक डाउनलोड की गई} other {# फ़ाइलें सफलतापूर्वक डाउनलोड की गईं}}",
|
||||
"assets_moved_to_trash_count": "{count, plural, one {# asset} other {# assets}} को ट्रैश में ले जाया गया",
|
||||
"assets_permanently_deleted_count": "स्थायी रूप से हटा दिया गया {count, plural, one {# asset} other {# assets}}",
|
||||
"assets_removed_count": "{count, plural, one {# asset} other {# assets}} हटा दिया गया",
|
||||
"assets_removed_permanently_from_device": "{count} संपत्ति(याँ) आपके डिवाइस से स्थायी रूप से हटा दी गईं",
|
||||
"assets_restore_confirmation": "क्या आप वाकई अपनी सभी नष्ट की गई संपत्तियों को पुनर्स्थापित करना चाहते हैं? आप इस क्रिया को पूर्ववत नहीं कर सकते!",
|
||||
"assets_restore_confirmation": "क्या आप वाकई अपनी सभी नष्ट की गई संपत्तियों को पुनर्स्थापित करना चाहते हैं? आप इस क्रिया को पूर्ववत नहीं कर सकते।",
|
||||
"assets_restored_count": "पुनर्स्थापित {count, plural, one {# asset} other {# assets}}",
|
||||
"assets_restored_successfully": "{count} संपत्ति(याँ) सफलतापूर्वक पुनर्स्थापित की गईं",
|
||||
"assets_trashed": "{count} संपत्ति(याँ) कचरे में डाली गईं",
|
||||
"assets_trashed_count": "ट्रैश की गई {count, plural, one {# asset} other {# assets}}",
|
||||
"assets_trashed_from_server": "{count} संपत्ति(याँ) इमिच सर्वर से कचरे में डाली गईं",
|
||||
"assets_were_part_of_album_count": "{count, plural, one {Asset was} other {Assets were}}एल्बम का पहले से ही हिस्सा थे",
|
||||
"authorized_devices": "अधिकृत उपकरण",
|
||||
"automatic_endpoint_switching_subtitle": "उपलब्ध होने पर निर्दिष्ट वाई-फाई से स्थानीय रूप से कनेक्ट करें और अन्यत्र वैकल्पिक कनेक्शन का उपयोग करें",
|
||||
"automatic_endpoint_switching_title": "स्वचालित URL स्विचिंग",
|
||||
"autoplay_slideshow": "ऑटोप्ले स्लाइड शो",
|
||||
"back": "वापस",
|
||||
"back_close_deselect": "वापस जाएँ, बंद करें, या अचयनित करें",
|
||||
"backup_controller_page_background_wifi": "Only on WiFi",
|
||||
"background_location_permission": "पृष्ठभूमि स्थान अनुमति",
|
||||
"background_location_permission_content": "पृष्ठभूमि में चलते समय नेटवर्क बदलने के लिए, Immich के पास *हमेशा* सटीक स्थान तक पहुंच होनी चाहिए ताकि ऐप वाई-फाई नेटवर्क का नाम पढ़ सके",
|
||||
"backup": "बैकअप",
|
||||
"backup_album_selection_page_albums_device": "डिवाइस पर एल्बम ({count})",
|
||||
"backup_album_selection_page_albums_tap": "शामिल करने के लिए टैप करें, बाहर करने के लिए डबल टैप करें",
|
||||
"backup_album_selection_page_assets_scatter": "एसेट कई एल्बमों में बिखरे हो सकते हैं। इसलिए, बैकअप प्रक्रिया के दौरान एल्बमों को शामिल या बाहर किया जा सकता है।",
|
||||
"backup_album_selection_page_select_albums": "एल्बम चुनें",
|
||||
"backup_album_selection_page_selection_info": "चयन जानकारी",
|
||||
"backup_album_selection_page_total_assets": "कुल अद्वितीय संपत्तियाँ",
|
||||
"backup_all": "सभी",
|
||||
"backup_background_service_backup_failed_message": "संपत्तियों का बैकअप लेने में विफल. पुनः प्रयास किया जा रहा है…",
|
||||
"backup_background_service_connection_failed_message": "सर्वर से कनेक्ट करने में विफल. पुनः प्रयास किया जा रहा है…",
|
||||
"backup_background_service_current_upload_notification": "{filename} अपलोड हो रहा है",
|
||||
"backup_background_service_default_notification": "नई परिसंपत्तियों की जांच की जा रही है…",
|
||||
"backup_background_service_error_title": "बैकअप त्रुटि",
|
||||
"backup_background_service_in_progress_notification": "अपनी परिसंपत्तियों का बैकअप लेना…",
|
||||
"backup_background_service_upload_failure_notification": "{filename} अपलोड करने में विफल",
|
||||
"backup_controller_page_albums": "बैकअप एल्बम",
|
||||
"backup_controller_page_background_app_refresh_disabled_content": "बैकग्राउंड बैकअप का उपयोग करने के लिए सेटिंग्स > सामान्य > बैकग्राउंड ऐप रिफ्रेश में बैकग्राउंड ऐप रिफ्रेश सक्षम करें।",
|
||||
"backup_controller_page_background_app_refresh_disabled_title": "पृष्ठभूमि ऐप रीफ़्रेश अक्षम",
|
||||
"backup_controller_page_background_app_refresh_enable_button_text": "सेटिंग्स पर जाएँ",
|
||||
"backup_controller_page_background_battery_info_link": "कैसे मुझे दिखाओ",
|
||||
"backup_controller_page_background_battery_info_message": "सर्वोत्तम बैकग्राउंड बैकअप अनुभव के लिए, कृपया Immich के लिए बैकग्राउंड गतिविधि को प्रतिबंधित करने वाले किसी भी बैटरी ऑप्टिमाइज़ेशन को अक्षम करें।\n\nचूँकि यह डिवाइस-विशिष्ट है, इसलिए कृपया अपने डिवाइस निर्माता से आवश्यक जानकारी देखें।",
|
||||
"backup_controller_page_background_battery_info_ok": "ठीक",
|
||||
"backup_controller_page_background_battery_info_title": "बैटरी अनुकूलन",
|
||||
"backup_controller_page_background_charging": "केवल चार्ज करते समय",
|
||||
"backup_controller_page_background_configure_error": "पृष्ठभूमि सेवा कॉन्फ़िगर करने में विफल",
|
||||
"backup_controller_page_background_delay": "नई संपत्ति का बैकअप विलंबित करें: {duration}",
|
||||
"backup_controller_page_background_description": "ऐप खोले बिना किसी भी नई संपत्ति का स्वचालित रूप से बैकअप लेने के लिए पृष्ठभूमि सेवा चालू करें",
|
||||
"backup_controller_page_background_is_off": "स्वचालित पृष्ठभूमि बैकअप बंद है",
|
||||
"backup_controller_page_background_is_on": "स्वचालित पृष्ठभूमि बैकअप चालू है",
|
||||
"backup_controller_page_background_turn_off": "पृष्ठभूमि सेवा बंद करें",
|
||||
"backup_controller_page_background_turn_on": "पृष्ठभूमि सेवा चालू करें",
|
||||
"backup_controller_page_background_wifi": "केवल वाई-फ़ाई पर",
|
||||
"backup_controller_page_backup": "बैकअप",
|
||||
"backup_controller_page_backup_selected": "चयनित: ",
|
||||
"backup_controller_page_backup_sub": "बैकअप किए गए फ़ोटो और वीडियो",
|
||||
"backup_controller_page_created": "निर्मित तिथि: {date}",
|
||||
"backup_controller_page_desc_backup": "ऐप खोलते समय सर्वर पर नई संपत्तियों को स्वचालित रूप से अपलोड करने के लिए अग्रभूमि बैकअप चालू करें।",
|
||||
"backup_controller_page_excluded": "छोड़ा गया: ",
|
||||
"backup_controller_page_failed": "विफल ({count})",
|
||||
"backup_controller_page_filename": "फ़ाइल नाम: {filename} [{size}]",
|
||||
"backup_controller_page_id": "आईडी: {id}",
|
||||
"backup_controller_page_info": "बैकअप जानकारी",
|
||||
"backup_controller_page_none_selected": "कोई भी चयनित नहीं",
|
||||
"backup_controller_page_remainder": "शेष",
|
||||
"backup_controller_page_remainder_sub": "चयन से बैकअप लेने के लिए शेष फ़ोटो और वीडियो",
|
||||
"backup_controller_page_server_storage": "सर्वर संग्रहण",
|
||||
"backup_controller_page_start_backup": "बैकअप प्रारंभ करें",
|
||||
"backup_controller_page_status_off": "स्वचालित अग्रभूमि बैकअप बंद है",
|
||||
"backup_controller_page_status_on": "स्वचालित अग्रभूमि बैकअप चालू है",
|
||||
"backup_controller_page_storage_format": "{total} में से {used} उपयोग किया गया",
|
||||
"backup_controller_page_to_backup": "बैकअप किए जाने वाले एल्बम",
|
||||
"backup_controller_page_total_sub": "चयनित एल्बमों से सभी अद्वितीय फ़ोटो और वीडियो",
|
||||
"backup_controller_page_turn_off": "अग्रभूमि बैकअप बंद करें",
|
||||
"backup_controller_page_turn_on": "अग्रभूमि बैकअप चालू करें",
|
||||
"backup_controller_page_uploading_file_info": "फ़ाइल जानकारी अपलोड करना",
|
||||
"backup_err_only_album": "एकमात्र एल्बम नहीं हटाया जा सकता",
|
||||
"backup_info_card_assets": "संपत्ति",
|
||||
"backup_manual_cancelled": "रद्द",
|
||||
"backup_manual_in_progress": "अपलोड पहले से ही प्रगति पर है। कुछ देर बाद प्रयास करें",
|
||||
"backup_manual_success": "सफलता",
|
||||
"backup_manual_title": "अपलोड स्थिति",
|
||||
"backup_options": "बैकअप विकल्प",
|
||||
"backup_options_page_title": "बैकअप विकल्प",
|
||||
"backup_setting_subtitle": "पृष्ठभूमि और अग्रभूमि अपलोड सेटिंग प्रबंधित करें",
|
||||
"backup_settings_subtitle": "अपलोड सेटिंग्स संभालें",
|
||||
"backward": "पिछला",
|
||||
"beta_sync": "बीटा सिंक स्थिति",
|
||||
"beta_sync_subtitle": "नए सिंक सिस्टम का प्रबंधन करें",
|
||||
"biometric_auth_enabled": "बायोमेट्रिक प्रमाणीकरण सक्षम",
|
||||
"biometric_locked_out": "आप बायोमेट्रिक प्रमाणीकरण से बाहर हैं",
|
||||
"biometric_no_options": "कोई बायोमेट्रिक विकल्प उपलब्ध नहीं है",
|
||||
"biometric_not_available": "इस डिवाइस पर बायोमेट्रिक प्रमाणीकरण उपलब्ध नहीं है",
|
||||
"birthdate_saved": "जन्मतिथि सफलतापूर्वक सहेजी गई",
|
||||
"birthdate_set_description": "जन्मतिथि का उपयोग फोटो के समय इस व्यक्ति की आयु की गणना करने के लिए किया जाता है।",
|
||||
"blurred_background": "धुंधली पृष्ठभूमि",
|
||||
"bugs_and_feature_requests": "बग और सुविधा अनुरोध",
|
||||
"build": "निर्माण",
|
||||
"build_image": "छवि बनाएँ",
|
||||
"bulk_delete_duplicates_confirmation": "क्या आप वाकई {count, plural, one {# duplicate asset} other {# duplicate assets}} को बल्क में हटाना चाहते हैं? इससे हर ग्रुप की सबसे बड़ी संपत्ति बनी रहेगी और बाकी सभी डुप्लिकेट हमेशा के लिए हट जाएँगे। आप इस क्रिया को पूर्ववत नहीं कर सकते!",
|
||||
"bulk_keep_duplicates_confirmation": "क्या आप वाकई {count, plural, one {# duplicate asset} other {# duplicate assets}} रखना चाहते हैं? इससे बिना कुछ हटाए सभी डुप्लिकेट ग्रुप हल हो जाएँगे।",
|
||||
"bulk_trash_duplicates_confirmation": "क्या आप वाकई {count, plural, one {# duplicate asset} other {# duplicate assets}} को बल्क ट्रैश करना चाहते हैं? इससे हर ग्रुप की सबसे बड़ी एसेट रहेगी और बाकी सभी डुप्लिकेट ट्रैश हो जाएँगे।",
|
||||
"buy": "इम्मीच खरीदो",
|
||||
"cache_settings_clear_cache_button": "कैश को साफ़ करें",
|
||||
"cache_settings_clear_cache_button_title": "ऐप का कैश साफ़ करता है। कैश के दोबारा बनने तक, यह ऐप के प्रदर्शन पर काफ़ी असर डालेगा।",
|
||||
"cache_settings_duplicated_assets_clear_button": "स्पष्ट",
|
||||
"cache_settings_duplicated_assets_subtitle": "ऐप द्वारा अनदेखा की गई तस्वीरें और वीडियो",
|
||||
"cache_settings_duplicated_assets_title": "डुप्लिकेट संपत्तियां ({count})",
|
||||
"cache_settings_statistics_album": "लाइब्रेरी थंबनेल",
|
||||
"cache_settings_statistics_full": "पूर्ण चित्र",
|
||||
"cache_settings_statistics_shared": "साझा किए गए एल्बम थंबनेल",
|
||||
"cache_settings_statistics_thumbnail": "थंबनेल",
|
||||
"cache_settings_statistics_title": "कैश उपयोग",
|
||||
"cache_settings_subtitle": "Immich मोबाइल एप्लिकेशन के कैशिंग व्यवहार को नियंत्रित करें",
|
||||
"cache_settings_tile_subtitle": "स्थानीय संग्रहण के व्यवहार को नियंत्रित करें",
|
||||
"cache_settings_tile_title": "स्थानीय संग्रहण",
|
||||
"cache_settings_title": "कैशिंग सेटिंग्स",
|
||||
"camera": "कैमरा",
|
||||
"camera_brand": "कैमरा ब्रांड",
|
||||
"camera_model": "कैमरा मॉडल",
|
||||
"cancel": "रद्द करना",
|
||||
"cancel_search": "खोज रद्द करें",
|
||||
"canceled": "रद्द करना",
|
||||
"canceling": "रद्द कर रहा है",
|
||||
"cannot_merge_people": "लोगों का विलय नहीं हो सकता",
|
||||
"cannot_undo_this_action": "आप इस क्रिया को पूर्ववत नहीं कर सकते!",
|
||||
"cannot_update_the_description": "विवरण अद्यतन नहीं किया जा सकता",
|
||||
"cast": "ढालना",
|
||||
"cast_description": "उपलब्ध कास्ट गंतव्यों को कॉन्फ़िगर करें",
|
||||
"change_date": "बदलाव दिनांक",
|
||||
"change_description": "विवरण बदलें",
|
||||
"change_display_order": "प्रदर्शन क्रम बदलें",
|
||||
"change_expiration_time": "समाप्ति समय बदलें",
|
||||
"change_location": "स्थान बदलें",
|
||||
"change_name": "नाम परिवर्तन करें",
|
||||
"change_name_successfully": "नाम सफलतापूर्वक बदलें",
|
||||
"change_name_successfully": "नाम सफलतापूर्वक बदला गया",
|
||||
"change_password": "पासवर्ड बदलें",
|
||||
"change_password_description": "यह या तो पहली बार है जब आप सिस्टम में साइन इन कर रहे हैं या आपका पासवर्ड बदलने का अनुरोध किया गया है।",
|
||||
"change_password_form_confirm_password": "पासवर्ड की पुष्टि कीजिये",
|
||||
"change_password_form_description": "नमस्ते {name},\n\nया तो आप पहली बार सिस्टम में साइन इन कर रहे हैं या फिर आपका पासवर्ड बदलने का अनुरोध किया गया है। कृपया नीचे नया पासवर्ड डालें।",
|
||||
"change_password_form_new_password": "नया पासवर्ड",
|
||||
"change_password_form_password_mismatch": "सांकेतिक शब्द मेल नहीं खाते",
|
||||
"change_password_form_reenter_new_password": "नया पासवर्ड पुनः दर्ज करें",
|
||||
"change_pin_code": "पिन कोड बदलें",
|
||||
"change_your_password": "अपना पासवर्ड बदलें",
|
||||
"changed_visibility_successfully": "दृश्यता सफलतापूर्वक परिवर्तित",
|
||||
"check_corrupt_asset_backup": "दूषित परिसंपत्ति बैकअप की जाँच करें",
|
||||
"check_corrupt_asset_backup_button": "जाँच करें",
|
||||
"check_corrupt_asset_backup_description": "यह जाँच केवल वाई-फ़ाई पर ही करें और सभी संपत्तियों का बैकअप लेने के बाद ही करें। इस प्रक्रिया में कुछ मिनट लग सकते हैं।",
|
||||
"check_logs": "लॉग जांचें",
|
||||
"choose_matching_people_to_merge": "मर्ज करने के लिए मिलते-जुलते लोगों को चुनें",
|
||||
"city": "शहर",
|
||||
"clear": "स्पष्ट",
|
||||
"clear_all": "सभी साफ करें",
|
||||
"clear_all_recent_searches": "सभी हालिया खोजें साफ़ करें",
|
||||
"clear_file_cache": "फ़ाइल कैश साफ़ करें",
|
||||
"clear_message": "स्पष्ट संदेश",
|
||||
"clear_value": "स्पष्ट मूल्य",
|
||||
"client_cert_dialog_msg_confirm": "ठीक",
|
||||
"client_cert_enter_password": "पास वर्ड दर्ज करें",
|
||||
"client_cert_import": "आयात",
|
||||
"client_cert_import_success_msg": "क्लाइंट प्रमाणपत्र आयात किया गया है",
|
||||
"client_cert_invalid_msg": "अमान्य प्रमाणपत्र फ़ाइल या गलत पासवर्ड",
|
||||
"client_cert_remove_msg": "क्लाइंट प्रमाणपत्र हटा दिया गया है",
|
||||
"client_cert_subtitle": "केवल PKCS12 (.p12, .pfx) फ़ॉर्मैट का समर्थन करता है। प्रमाणपत्र आयात/हटाएँ केवल लॉगिन से पहले उपलब्ध हैं",
|
||||
"client_cert_title": "SSL क्लाइंट प्रमाणपत्र",
|
||||
"clockwise": "दक्षिणावर्त",
|
||||
"close": "बंद",
|
||||
"collapse": "गिर जाना",
|
||||
"collapse_all": "सभी को संकुचित करें",
|
||||
"color": "रंग",
|
||||
"color_theme": "रंग थीम",
|
||||
"comment_deleted": "टिप्पणी हटा दी गई",
|
||||
"comment_options": "टिप्पणी विकल्प",
|
||||
"comments_and_likes": "टिप्पणियाँ और पसंद",
|
||||
"comments_are_disabled": "टिप्पणियाँ अक्षम हैं",
|
||||
"common_create_new_album": "नया एल्बम बनाएँ",
|
||||
"common_server_error": "कृपया अपने नेटवर्क कनेक्शन की जांच करें, सुनिश्चित करें कि सर्वर पहुंच योग्य है और ऐप/सर्वर संस्करण संगत हैं।",
|
||||
"completed": "पुरा होना",
|
||||
"confirm": "पुष्टि",
|
||||
"confirm_admin_password": "एडमिन पासवर्ड की पुष्टि करें",
|
||||
"confirm_delete_face": "क्या आप वाकई एसेट से {name} चेहरा हटाना चाहते हैं?",
|
||||
"confirm_delete_shared_link": "क्या आप वाकई इस साझा लिंक को हटाना चाहते हैं?",
|
||||
"confirm_keep_this_delete_others": "इस एसेट को छोड़कर, स्टैक की सभी अन्य एसेट हटा दी जाएँगी। क्या आप वाकई जारी रखना चाहते हैं?",
|
||||
"confirm_new_pin_code": "नए पिन कोड की पुष्टि करें",
|
||||
"confirm_password": "पासवर्ड की पुष्टि कीजिये",
|
||||
"confirm_tag_face": "क्या आप इस चेहरे को {name} के रूप में टैग करना चाहते हैं?",
|
||||
"confirm_tag_face_unnamed": "क्या आप इस चेहरे को टैग करना चाहते हैं?",
|
||||
"connected_device": "कनेक्टेड डिवाइस",
|
||||
"connected_to": "से जुड़ा",
|
||||
"contain": "समाहित",
|
||||
"context": "संदर्भ",
|
||||
"continue": "जारी",
|
||||
"control_bottom_app_bar_create_new_album": "नया एल्बम बनाएँ",
|
||||
"control_bottom_app_bar_delete_from_immich": "Immich से हटाएं",
|
||||
"control_bottom_app_bar_delete_from_local": "डिवाइस से हटाएं",
|
||||
"control_bottom_app_bar_edit_location": "स्थान संपादित करें",
|
||||
"control_bottom_app_bar_edit_time": "तारीख और समय संपादित करें",
|
||||
"control_bottom_app_bar_share_link": "लिंक शेयर करें",
|
||||
"control_bottom_app_bar_share_to": "साझा करें",
|
||||
"control_bottom_app_bar_trash_from_immich": "ट्रैश में ले जाएं",
|
||||
"copied_image_to_clipboard": "छवि को क्लिपबोर्ड पर कॉपी किया गया।",
|
||||
"copied_to_clipboard": "क्लिपबोर्ड पर नकल!",
|
||||
"copy_error": "प्रतिलिपि त्रुटि",
|
||||
@@ -523,6 +713,7 @@
|
||||
"covers": "आवरण",
|
||||
"create": "तैयार करें",
|
||||
"create_album": "एल्बम बनाओ",
|
||||
"create_album_page_untitled": "शीर्षकहीन",
|
||||
"create_library": "लाइब्रेरी बनाएं",
|
||||
"create_link": "लिंक बनाएं",
|
||||
"create_link_to_share": "शेयर करने के लिए लिंक बनाएं",
|
||||
@@ -531,39 +722,80 @@
|
||||
"create_new_person": "नया व्यक्ति बनाएं",
|
||||
"create_new_person_hint": "चयनित संपत्तियों को एक नए व्यक्ति को सौंपें",
|
||||
"create_new_user": "नया उपयोगकर्ता बनाएं",
|
||||
"create_shared_album_page_share_add_assets": "संपत्ति जोड़ें",
|
||||
"create_shared_album_page_share_select_photos": "फ़ोटो चुनें",
|
||||
"create_shared_link": "शेयर लिंक बनाएँ",
|
||||
"create_tag": "टैग बनाएँ",
|
||||
"create_tag_description": "एक नया टैग बनाएँ। नेस्टेड टैग के लिए, कृपया फ़ॉरवर्ड स्लैश सहित टैग का पूरा पथ दर्ज करें।",
|
||||
"create_user": "उपयोगकर्ता बनाइये",
|
||||
"created": "बनाया",
|
||||
"created_at": "बनाया था",
|
||||
"crop": "छाँटें",
|
||||
"curated_object_page_title": "चीज़ें",
|
||||
"current_device": "वर्तमान उपकरण",
|
||||
"current_pin_code": "वर्तमान पिन कोड",
|
||||
"current_server_address": "वर्तमान सर्वर पता",
|
||||
"custom_locale": "कस्टम लोकेल",
|
||||
"custom_locale_description": "भाषा और क्षेत्र के आधार पर दिनांक और संख्याएँ प्रारूपित करें",
|
||||
"custom_url": "कस्टम URL",
|
||||
"daily_title_text_date": "ई, एमएमएम डीडी",
|
||||
"daily_title_text_date_year": "ई, एमएमएम दिन, वर्ष",
|
||||
"dark": "डार्क",
|
||||
"dark_theme": "डार्क थीम टॉगल करें",
|
||||
"date_after": "इसके बाद की तारीख",
|
||||
"date_and_time": "तिथि और समय",
|
||||
"date_before": "पहले की तारीख",
|
||||
"date_format": "ई, एलएलएल डी, वाई • एच:एमएम ए",
|
||||
"date_of_birth_saved": "जन्मतिथि सफलतापूर्वक सहेजी गई",
|
||||
"date_range": "तिथि सीमा",
|
||||
"day": "दिन",
|
||||
"deduplicate_all": "सभी को डुप्लिकेट करें",
|
||||
"deduplication_criteria_1": "छवि का आकार बाइट्स में",
|
||||
"deduplication_criteria_2": "EXIF डेटा की संख्या",
|
||||
"deduplication_info": "डुप्लीकेशन हटाने की जानकारी",
|
||||
"deduplication_info_description": "परिसंपत्तियों का स्वचालित रूप से पूर्व-चयन करने और डुप्लिकेट को थोक में हटाने के लिए, हम निम्न पर ध्यान देते हैं:",
|
||||
"default_locale": "डिफ़ॉल्ट स्थान",
|
||||
"default_locale_description": "अपने ब्राउज़र स्थान के आधार पर दिनांक और संख्याएँ प्रारूपित करें",
|
||||
"delete": "हटाएँ",
|
||||
"delete_action_confirmation_message": "क्या आप वाकई इस आइटम को हटाना चाहते हैं? यह कार्रवाई आइटम को सर्वर की ट्रैश में ले जाएगी और स्थानीय रूप से हटाने के लिए पुष्टि मांगेगी",
|
||||
"delete_action_prompt": "{count} हटाए गए",
|
||||
"delete_album": "एल्बम हटाएँ",
|
||||
"delete_api_key_prompt": "क्या आप वाकई इस एपीआई कुंजी को हटाना चाहते हैं?",
|
||||
"delete_dialog_alert": "ये आइटम Immich और आपके डिवाइस से स्थायी रूप से हटा दिए जाएंगे",
|
||||
"delete_dialog_alert_local": "ये आइटम आपके डिवाइस से स्थायी रूप से हटा दिए जाएंगे, लेकिन फिर भी Immich सर्वर पर उपलब्ध रहेंगे",
|
||||
"delete_dialog_alert_local_non_backed_up": "कुछ आइटम का Immich में बैकअप नहीं लिया गया है और उन्हें आपके डिवाइस से स्थायी रूप से हटा दिया जाएगा",
|
||||
"delete_dialog_alert_remote": "ये आइटम Immich सर्वर से स्थायी रूप से हटा दिए जाएंगे",
|
||||
"delete_dialog_ok_force": "फिर भी हटाएं",
|
||||
"delete_dialog_title": "स्थायी रूप से हटाएँ",
|
||||
"delete_duplicates_confirmation": "क्या आप वाकई इन डुप्लिकेट को स्थायी रूप से हटाना चाहते हैं?",
|
||||
"delete_face": "चेहरा हटाएं",
|
||||
"delete_key": "कुंजी हटाएँ",
|
||||
"delete_library": "लाइब्रेरी हटाएँ",
|
||||
"delete_link": "लिंक हटाएँ",
|
||||
"delete_local_action_prompt": "{count} स्थानीय रूप से हटा दिया गया",
|
||||
"delete_local_dialog_ok_backed_up_only": "केवल बैकअप हटाएं",
|
||||
"delete_local_dialog_ok_force": "फिर भी हटाएं",
|
||||
"delete_others": "अन्य को हटाएँ",
|
||||
"delete_permanently": "स्थायी रूप से हटाएँ",
|
||||
"delete_permanently_action_prompt": "{count} स्थायी रूप से हटाए गए",
|
||||
"delete_shared_link": "साझा किए गए लिंक को हटाएं",
|
||||
"delete_shared_link_dialog_title": "साझा किए गए लिंक को हटाएं",
|
||||
"delete_tag": "टैग हटाएं",
|
||||
"delete_tag_confirmation_prompt": "क्या आप वाकई {tagName} टैग हटाना चाहते हैं?",
|
||||
"delete_user": "उपभोक्ता मिटायें",
|
||||
"deleted_shared_link": "साझा किया गया लिंक हटा दिया गया",
|
||||
"deletes_missing_assets": "डिस्क से गायब संपत्तियों को हटाता है",
|
||||
"description": "वर्णन",
|
||||
"description_input_hint_text": "विवरण जोड़ें..।",
|
||||
"description_input_submit_error": "विवरण अपडेट करते समय त्रुटि हुई, अधिक जानकारी के लिए लॉग देखें",
|
||||
"deselect_all": "सबको अचयनित करो",
|
||||
"details": "विवरण",
|
||||
"direction": "दिशा",
|
||||
"disabled": "अक्षम",
|
||||
"disallow_edits": "संपादनों की अनुमति न दें",
|
||||
"discord": "डिसकॉर्ड",
|
||||
"discover": "खोजें",
|
||||
"discovered_devices": "खोजे गए उपकरण",
|
||||
"dismiss_all_errors": "सभी त्रुटियाँ ख़ारिज करें",
|
||||
"dismiss_error": "त्रुटि ख़ारिज करें",
|
||||
"display_options": "प्रदर्शन चुनाव",
|
||||
@@ -571,14 +803,18 @@
|
||||
"display_original_photos": "मूल फ़ोटो प्रदर्शित करें",
|
||||
"display_original_photos_setting_description": "किसी संपत्ति को देखते समय थंबनेल के बजाय मूल तस्वीर प्रदर्शित करना पसंद करें जब मूल संपत्ति वेब-संगत हो।",
|
||||
"do_not_show_again": "इस संदेश को दुबारा मत दिखाना",
|
||||
"documentation": "प्रलेखन",
|
||||
"done": "ठीक है",
|
||||
"download": "डाउनलोड करें",
|
||||
"download_action_prompt": "{count} संपत्तियां डाउनलोड हो रही हैं",
|
||||
"download_canceled": "डाउनलोड रद्द कर दिया गया",
|
||||
"download_complete": "डाउनलोड पूरा",
|
||||
"download_enqueue": "डाउनलोड कतार में है",
|
||||
"download_error": "डाउनलोड त्रुटि",
|
||||
"download_failed": "डाउनलोड विफल",
|
||||
"download_finished": "डाउनलोड समाप्त",
|
||||
"download_include_embedded_motion_videos": "एम्बेडेड वीडियो",
|
||||
"download_include_embedded_motion_videos_description": "मोशन फ़ोटो में एम्बेड किए गए वीडियो को एक अलग फ़ाइल के रूप में शामिल करें",
|
||||
"download_notfound": "डाउनलोड नहीं मिला",
|
||||
"download_paused": "डाउनलोड स्थगित",
|
||||
"download_settings": "डाउनलोड करना",
|
||||
@@ -588,6 +824,7 @@
|
||||
"download_sucess_android": "मीडिया DCIM/Immich में डाउनलोड हो गया है",
|
||||
"download_waiting_to_retry": "पुनः प्रयास करने का इंतजार कर रहा है",
|
||||
"downloading": "डाउनलोड",
|
||||
"downloading_asset_filename": "संपत्ति {filename} डाउनलोड हो रही है",
|
||||
"downloading_media": "मीडिया डाउनलोड हो रहा है",
|
||||
"drop_files_to_upload": "अपलोड करने के लिए फ़ाइलें कहीं भी छोड़ें",
|
||||
"duplicates": "डुप्लिकेट",
|
||||
@@ -596,8 +833,12 @@
|
||||
"edit": "संपादन करना",
|
||||
"edit_album": "एल्बम संपादित करें",
|
||||
"edit_avatar": "अवतार को एडिट करें",
|
||||
"edit_birthday": "जन्मदिन बदलें",
|
||||
"edit_date": "संपादन की तारीख",
|
||||
"edit_date_and_time": "दिनांक और समय संपादित करें",
|
||||
"edit_date_and_time_action_prompt": "{count} तारीख और समय संपादित किए गए",
|
||||
"edit_description": "संपादित करें वर्णन",
|
||||
"edit_description_prompt": "कृपया एक नया विवरण चुनें:",
|
||||
"edit_exclusion_pattern": "बहिष्करण पैटर्न संपादित करें",
|
||||
"edit_faces": "चेहरे संपादित करें",
|
||||
"edit_import_path": "आयात पथ संपादित करें",
|
||||
@@ -605,27 +846,47 @@
|
||||
"edit_key": "कुंजी संपादित करें",
|
||||
"edit_link": "लिंक संपादित करें",
|
||||
"edit_location": "स्थान संपादित करें",
|
||||
"edit_location_action_prompt": "{count} स्थान संपादित किए गए",
|
||||
"edit_location_dialog_title": "स्थान",
|
||||
"edit_name": "नाम संपादित करें",
|
||||
"edit_people": "लोगों को संपादित करें",
|
||||
"edit_tag": "टैग बदलें",
|
||||
"edit_title": "शीर्षक संपादित करें",
|
||||
"edit_user": "यूजर को संपादित करो",
|
||||
"edited": "संपादित",
|
||||
"editor": "संपादक",
|
||||
"editor_close_without_save_prompt": "परिवर्तन सहेजे नहीं जाएँगे",
|
||||
"editor_close_without_save_title": "संपादक बंद करें?",
|
||||
"editor_crop_tool_h2_aspect_ratios": "आस्पेक्ट अनुपात",
|
||||
"editor_crop_tool_h2_rotation": "रोटेशन",
|
||||
"email": "ईमेल",
|
||||
"email_notifications": "ईमेल सूचनाएँ",
|
||||
"empty_folder": "यह फ़ोल्डर खाली है",
|
||||
"empty_trash": "कूड़ेदान खाली करें",
|
||||
"empty_trash_confirmation": "क्या आपको यकीन है कि आप कचरा खाली करना चाहते हैं? यह इमिच से स्थायी रूप से कचरा में सभी संपत्तियों को हटा देगा।\nआप इस कार्रवाई को नहीं रोक सकते!",
|
||||
"enable": "सक्षम",
|
||||
"enable_backup": "बैकअप चालू करें",
|
||||
"enable_biometric_auth_description": "बायोमेट्रिक प्रमाणीकरण सक्षम करने के लिए अपना पिन कोड दर्ज करें",
|
||||
"enabled": "सक्रिय",
|
||||
"end_date": "अंतिम तिथि",
|
||||
"enter_wifi_name": "Enter WiFi name",
|
||||
"enqueued": "कतार में जोड़ा गया",
|
||||
"enter_wifi_name": "Wi-Fi का नाम लिखें",
|
||||
"enter_your_pin_code": "अपना पिन कोड डालें",
|
||||
"enter_your_pin_code_subtitle": "लॉक फ़ोल्डर खोलने के लिए पिन कोड डालें",
|
||||
"error": "गलती",
|
||||
"error_change_sort_album": "एल्बम का क्रम बदलने में असफल रहा",
|
||||
"error_delete_face": "एसेट से चेहरे को हटाने में त्रुटि हुई",
|
||||
"error_loading_image": "छवि लोड करने में त्रुटि",
|
||||
"error_saving_image": "त्रुटि: {error}",
|
||||
"error_tag_face_bounding_box": "चेहरे को टैग करने में त्रुटि – बाउंडिंग बॉक्स निर्देशांक प्राप्त नहीं कर सके",
|
||||
"error_title": "त्रुटि - कुछ गलत हो गया",
|
||||
"errors": {
|
||||
"cannot_navigate_next_asset": "अगली संपत्ति पर नेविगेट नहीं किया जा सकता",
|
||||
"cannot_navigate_previous_asset": "पिछली संपत्ति पर नेविगेट नहीं किया जा सकता",
|
||||
"cant_apply_changes": "परिवर्तन लागू नहीं कर सकते",
|
||||
"cant_change_activity": "गतिविधि को {enabled, select, true {अक्षम} other {सक्षम}} नहीं कर सकते",
|
||||
"cant_change_asset_favorite": "संपत्ति के लिए पसंदीदा नहीं बदला जा सकता",
|
||||
"cant_change_metadata_assets_count": "{count, plural, one {# आइटम} other {# आइटम्स}} के मेटाडेटा को बदल नहीं सकते",
|
||||
"cant_get_faces": "चेहरे नहीं मिल सके",
|
||||
"cant_get_number_of_comments": "टिप्पणियों की संख्या नहीं मिल सकी",
|
||||
"cant_search_people": "लोगों को खोजा नहीं जा सकता",
|
||||
@@ -633,6 +894,7 @@
|
||||
"error_adding_assets_to_album": "एल्बम में संपत्ति डालने में त्रुटि",
|
||||
"error_adding_users_to_album": "एल्बम में उपयोगकर्ताओं को डालने में त्रुटि",
|
||||
"error_deleting_shared_user": "साझा उपयोगकर्ता को हटाने में त्रुटि",
|
||||
"error_downloading": "{filename} डाउनलोड नहीं हो पाया",
|
||||
"error_hiding_buy_button": "खरीदें बटन छिपाने में त्रुटि",
|
||||
"error_removing_assets_from_album": "एल्बम से संपत्तियों को हटाने में त्रुटि, अधिक विवरण के लिए कंसोल की जाँच करें",
|
||||
"error_selecting_all_assets": "सभी परिसंपत्तियों का चयन करने में त्रुटि",
|
||||
@@ -641,14 +903,18 @@
|
||||
"failed_to_create_shared_link": "साझा लिंक बनाने में विफल",
|
||||
"failed_to_edit_shared_link": "साझा लिंक संपादित करने में विफल",
|
||||
"failed_to_get_people": "लोगों को पाने में विफल",
|
||||
"failed_to_keep_this_delete_others": "इस आइटम को रखने और बाकी को हटाने में असफल रहा",
|
||||
"failed_to_load_asset": "परिसंपत्ति लोड करने में विफल",
|
||||
"failed_to_load_assets": "परिसंपत्तियाँ लोड करने में विफल",
|
||||
"failed_to_load_notifications": "सूचनाएँ लोड करने में विफल",
|
||||
"failed_to_load_people": "लोगों को लोड करने में विफल",
|
||||
"failed_to_remove_product_key": "उत्पाद कुंजी निकालने में विफल",
|
||||
"failed_to_stack_assets": "परिसंपत्तियों का ढेर लगाने में विफल",
|
||||
"failed_to_unstack_assets": "परिसंपत्तियों का ढेर खोलने में विफल",
|
||||
"failed_to_update_notification_status": "सूचना की स्थिति अपडेट करने में विफल",
|
||||
"import_path_already_exists": "यह आयात पथ पहले से मौजूद है।",
|
||||
"incorrect_email_or_password": "गलत ईमेल या पासवर्ड",
|
||||
"paths_validation_failed": "{paths, plural, one {# पथ} other {# पथ}} सत्यापन में विफल रहे",
|
||||
"profile_picture_transparent_pixels": "प्रोफ़ाइल चित्रों में पारदर्शी पिक्सेल नहीं हो सकते।",
|
||||
"quota_higher_than_disk_size": "आपने डिस्क आकार से अधिक कोटा निर्धारित किया है",
|
||||
"unable_to_add_album_users": "उपयोगकर्ताओं को एल्बम में डालने में असमर्थ",
|
||||
@@ -657,11 +923,16 @@
|
||||
"unable_to_add_exclusion_pattern": "बहिष्करण पैटर्न डालने में असमर्थ",
|
||||
"unable_to_add_import_path": "आयात पथ डालने में असमर्थ",
|
||||
"unable_to_add_partners": "साझेदार डालने में असमर्थ",
|
||||
"unable_to_add_remove_archive": "{archived, select, true {एसेट को संग्रह से हटाने में असमर्थ} other {एसेट को संग्रह में जोड़ने में असमर्थ}}",
|
||||
"unable_to_add_remove_favorites": "{favorite, select, true {एसेट को पसंदीदा में जोड़ने में असमर्थ} other {एसेट को पसंदीदा से हटाने में असमर्थ}}",
|
||||
"unable_to_archive_unarchive": "{archived, select, true {संग्रहित करने में असमर्थ} other {संग्रह से हटाने में असमर्थ}}",
|
||||
"unable_to_change_album_user_role": "एल्बम उपयोगकर्ता की भूमिका बदलने में असमर्थ",
|
||||
"unable_to_change_date": "दिनांक बदलने में असमर्थ",
|
||||
"unable_to_change_description": "विवरण बदलने में असमर्थ",
|
||||
"unable_to_change_favorite": "संपत्ति के लिए पसंदीदा बदलने में असमर्थ",
|
||||
"unable_to_change_location": "स्थान बदलने में असमर्थ",
|
||||
"unable_to_change_password": "पासवर्ड बदलने में असमर्थ",
|
||||
"unable_to_change_visibility": "{count, plural, one {# व्यक्ति} other {# लोग}} की दृश्यता बदलने में असमर्थ",
|
||||
"unable_to_complete_oauth_login": "OAuth लॉगिन पूर्ण करने में असमर्थ",
|
||||
"unable_to_connect": "कनेक्ट करने में असमर्थ",
|
||||
"unable_to_copy_to_clipboard": "क्लिपबोर्ड पर कॉपी नहीं किया जा सकता, सुनिश्चित करें कि आप https के माध्यम से पेज तक पहुंच रहे हैं",
|
||||
@@ -685,11 +956,13 @@
|
||||
"unable_to_get_comments_number": "टिप्पणियों की संख्या प्राप्त करने में असमर्थ",
|
||||
"unable_to_get_shared_link": "साझा लिंक प्राप्त करने में विफल",
|
||||
"unable_to_hide_person": "व्यक्ति को छुपाने में असमर्थ",
|
||||
"unable_to_link_motion_video": "मोशन वीडियो लिंक करने में असमर्थ",
|
||||
"unable_to_link_oauth_account": "OAuth खाता लिंक करने में असमर्थ",
|
||||
"unable_to_log_out_all_devices": "सभी डिवाइसों को लॉग आउट करने में असमर्थ",
|
||||
"unable_to_log_out_device": "डिवाइस लॉग आउट करने में असमर्थ",
|
||||
"unable_to_login_with_oauth": "OAuth से लॉगिन करने में असमर्थ",
|
||||
"unable_to_play_video": "वीडियो चलाने में असमर्थ",
|
||||
"unable_to_reassign_assets_existing_person": "{ name, select, null {एसेट्स को एक मौजूदा व्यक्ति को पुनः असाइन करने में असमर्थ} other {एसेट्स को {name} को पुनः असाइन करने में असमर्थ} }",
|
||||
"unable_to_reassign_assets_new_person": "किसी नये व्यक्ति को संपत्ति पुनः सौंपने में असमर्थ",
|
||||
"unable_to_refresh_user": "उपयोगकर्ता को ताज़ा करने में असमर्थ",
|
||||
"unable_to_remove_album_users": "उपयोगकर्ताओं को एल्बम से निकालने में असमर्थ",
|
||||
@@ -699,6 +972,7 @@
|
||||
"unable_to_remove_partner": "पार्टनर को हटाने में असमर्थ",
|
||||
"unable_to_remove_reaction": "प्रतिक्रिया निकालने में असमर्थ",
|
||||
"unable_to_reset_password": "पासवर्ड रीसेट करने में असमर्थ",
|
||||
"unable_to_reset_pin_code": "पिन कोड रीसेट करने में असमर्थ",
|
||||
"unable_to_resolve_duplicate": "डुप्लिकेट का समाधान करने में असमर्थ",
|
||||
"unable_to_restore_assets": "संपत्तियों को पुनर्स्थापित करने में असमर्थ",
|
||||
"unable_to_restore_trash": "कचरा पुनर्स्थापित करने में असमर्थ",
|
||||
@@ -716,6 +990,7 @@
|
||||
"unable_to_submit_job": "कार्य प्रस्तुत करने में असमर्थ",
|
||||
"unable_to_trash_asset": "संपत्ति को ट्रैश करने में असमर्थ",
|
||||
"unable_to_unlink_account": "खाता अनलिंक करने में असमर्थ",
|
||||
"unable_to_unlink_motion_video": "मोशन वीडियो अनलिंक करने में असमर्थ",
|
||||
"unable_to_update_album_cover": "एल्बम कवर अपडेट करने में असमर्थ",
|
||||
"unable_to_update_album_info": "एल्बम जानकारी अद्यतन करने में असमर्थ",
|
||||
"unable_to_update_library": "लाइब्रेरी अद्यतन करने में असमर्थ",
|
||||
@@ -726,6 +1001,7 @@
|
||||
"unable_to_upload_file": "फाइल अपलोड करने में असमर्थ"
|
||||
},
|
||||
"exif": "एक्सिफ",
|
||||
"exif_bottom_sheet_description": "विवरण जोड़ें..।",
|
||||
"exif_bottom_sheet_person_add_person": "नाम डालें",
|
||||
"exit_slideshow": "स्लाइड शो से बाहर निकलें",
|
||||
"expand_all": "सभी का विस्तार",
|
||||
@@ -816,7 +1092,6 @@
|
||||
"library_options": "पुस्तकालय विकल्प",
|
||||
"light": "रोशनी",
|
||||
"like_deleted": "जैसे हटा दिया गया",
|
||||
"link_options": "लिंक विकल्प",
|
||||
"link_to_oauth": "OAuth से लिंक करें",
|
||||
"linked_oauth_account": "लिंक किया गया OAuth खाता",
|
||||
"list": "सूची",
|
||||
|
||||
174
i18n/hr.json
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "Dodaj lokaciju",
|
||||
"add_a_name": "Dodaj ime",
|
||||
"add_a_title": "Dodaj naslov",
|
||||
"add_birthday": "Dodaj rođendan",
|
||||
"add_endpoint": "Dodaj krajnju točnu",
|
||||
"add_exclusion_pattern": "Dodaj uzorak izuzimanja",
|
||||
"add_import_path": "Dodaj import folder",
|
||||
@@ -27,6 +28,9 @@
|
||||
"add_to_album": "Dodaj u album",
|
||||
"add_to_album_bottom_sheet_added": "Dodano u {album}",
|
||||
"add_to_album_bottom_sheet_already_exists": "Već u {album}",
|
||||
"add_to_album_toggle": "Uključi/isključi odabir za {album}",
|
||||
"add_to_albums": "Dodaj u albume",
|
||||
"add_to_albums_count": "Dodaj u albume ({count})",
|
||||
"add_to_shared_album": "Dodaj u dijeljeni album",
|
||||
"add_url": "Dodaj URL",
|
||||
"added_to_archive": "Dodano u arhivu",
|
||||
@@ -34,6 +38,7 @@
|
||||
"added_to_favorites_count": "Dodano {count, number} u omiljeno",
|
||||
"admin": {
|
||||
"add_exclusion_pattern_description": "Dodajte uzorke izuzimanja. Globiranje pomoću *, ** i ? je podržano. Za ignoriranje svih datoteka u bilo kojem direktoriju pod nazivom \"Raw\", koristite \"**/Raw/**\". Da biste zanemarili sve datoteke koje završavaju na \".tif\", koristite \"**/*.tif\". Da biste zanemarili apsolutni put, koristite \"/path/to/ignore/**\".",
|
||||
"admin_user": "Administrator",
|
||||
"asset_offline_description": "Ovo sredstvo vanjske knjižnice više nije pronađeno na disku i premješteno je u smeće. Ako je datoteka premještena unutar biblioteke, provjerite svoju vremensku traku za novo odgovarajuće sredstvo. Da biste vratili ovo sredstvo, provjerite može li Immich pristupiti donjoj stazi datoteke i skenirajte biblioteku.",
|
||||
"authentication_settings": "Postavke autentikacije",
|
||||
"authentication_settings_description": "Uredi lozinku, OAuth, i druge postavke autentikacije",
|
||||
@@ -43,6 +48,13 @@
|
||||
"backup_database": "Kreiraj sigurnosnu kopiju baze podataka",
|
||||
"backup_database_enable_description": "Omogućite sigurnosne kopije baze podataka",
|
||||
"backup_keep_last_amount": "Količina prethodnih sigurnosnih kopija za čuvanje",
|
||||
"backup_onboarding_1_description": "kopija izvan lokacije u oblaku ili na drugoj fizičkoj lokaciji.",
|
||||
"backup_onboarding_2_description": "lokalne kopije na različitim uređajima. To uključuje glavne datoteke i sigurnosnu kopiju tih datoteka lokalno.",
|
||||
"backup_onboarding_3_description": "ukupne kopije vaših podataka, uključujući izvorne datoteke. To uključuje 1 kopiju izvan lokacije i 2 lokalne kopije.",
|
||||
"backup_onboarding_description": "Preporučuje se <backblaze-link>3-2-1 strategija sigurnosnog kopiranja</backblaze-link> za zaštitu vaših podataka. Trebali biste čuvati kopije svojih prenesenih fotografija/videozapisa kao i Immich bazu podataka za sveobuhvatno rješenje sigurnosne kopije.",
|
||||
"backup_onboarding_footer": "Za više informacija o sigurnosnom kopiranju Immich, molimo pogledajte <link>dokumentaciju</link>.",
|
||||
"backup_onboarding_parts_title": "3-2-1 sigurnosna kopija uključuje:",
|
||||
"backup_onboarding_title": "Sigurnosne kopije",
|
||||
"backup_settings": "Postavke sigurnosne kopije",
|
||||
"backup_settings_description": "Upravljajte postavkama izvoza baze podataka.",
|
||||
"cleared_jobs": "Izbrisani poslovi za: {job}",
|
||||
@@ -165,6 +177,20 @@
|
||||
"metadata_settings_description": "Upravljanje postavkama metapodataka",
|
||||
"migration_job": "Migracija",
|
||||
"migration_job_description": "Premjestite minijature za sredstva i lica u najnoviju strukturu mapa",
|
||||
"nightly_tasks_cluster_faces_setting_description": "Pokreni prepoznavanje lica na novootkrivenim licima",
|
||||
"nightly_tasks_cluster_new_faces_setting": "Grupiraj nova lica",
|
||||
"nightly_tasks_database_cleanup_setting": "Zadaci čišćenja baze podataka",
|
||||
"nightly_tasks_database_cleanup_setting_description": "Očisti stare, istekle podatke iz baze podataka",
|
||||
"nightly_tasks_generate_memories_setting": "Generiraj uspomene",
|
||||
"nightly_tasks_generate_memories_setting_description": "Stvori nove uspomene iz sadržaja",
|
||||
"nightly_tasks_missing_thumbnails_setting": "Generiraj nedostajuće sličice",
|
||||
"nightly_tasks_missing_thumbnails_setting_description": "Stavi u red čekanja sadržaje bez sličica za generiranje sličica",
|
||||
"nightly_tasks_settings": "Postavke noćnih zadataka",
|
||||
"nightly_tasks_settings_description": "Upravljanje noćnim zadacima",
|
||||
"nightly_tasks_start_time_setting": "Vrijeme početka",
|
||||
"nightly_tasks_start_time_setting_description": "Vrijeme pokretanja noćnih zadataka na poslužitelju",
|
||||
"nightly_tasks_sync_quota_usage_setting": "Sinkroniziraj iskorištenost kvote",
|
||||
"nightly_tasks_sync_quota_usage_setting_description": "Ažuriraj korisničku kvotu za pohranu na temelju trenutne potrošnje",
|
||||
"no_paths_added": "Nema dodanih putanja",
|
||||
"no_pattern_added": "Nije dodan uzorak",
|
||||
"note_apply_storage_label_previous_assets": "Napomena: da biste primijenili Oznaku Pohrane na prethodno prenesena sredstva, pokrenite",
|
||||
@@ -195,6 +221,8 @@
|
||||
"oauth_mobile_redirect_uri": "Mobilnog Preusmjeravanja URI",
|
||||
"oauth_mobile_redirect_uri_override": "Nadjačavanje URI-preusmjeravanja za mobilne uređaje",
|
||||
"oauth_mobile_redirect_uri_override_description": "Omogući kada pružatelj OAuth ne dopušta mobilni URI, poput ''{callback}''",
|
||||
"oauth_role_claim": "Dodjela uloge",
|
||||
"oauth_role_claim_description": "Automatski dodijeli administratorski pristup na temelju prisutnosti ove tvrdnje. Tvrdnja može sadržavati ili 'user' ili 'admin'.",
|
||||
"oauth_settings": "OAuth",
|
||||
"oauth_settings_description": "Upravljanje postavkama za prijavu kroz OAuth",
|
||||
"oauth_settings_more_details": "Za više pojedinosti o ovoj značajci pogledajte <link>uputstva</link>.",
|
||||
@@ -203,7 +231,7 @@
|
||||
"oauth_storage_quota_claim": "Zahtjev za kvotom pohrane",
|
||||
"oauth_storage_quota_claim_description": "Automatski postavite korisničku kvotu pohrane na vrijednost ovog zahtjeva.",
|
||||
"oauth_storage_quota_default": "Zadana kvota pohrane (GiB)",
|
||||
"oauth_storage_quota_default_description": "Kvota u GiB koja će se koristiti kada nema zahtjeva (unesite 0 za neograničenu kvotu).",
|
||||
"oauth_storage_quota_default_description": "Kvota u GiB koja će se koristiti kada nema zahtjeva",
|
||||
"oauth_timeout": "Istek vremena zahtjeva",
|
||||
"oauth_timeout_description": "Istek vremena zahtjeva je u milisekundama",
|
||||
"password_enable_description": "Prijava s email adresom i zaporkom",
|
||||
@@ -243,6 +271,7 @@
|
||||
"storage_template_migration_info": "Predložak za pohranu će sve nastavke (ekstenzije) pretvoriti u mala slova. Promjene predloška primjenjivat će se samo na nova sredstva. Za retroaktivnu primjenu predloška na prethodno prenesena sredstva, pokrenite <link>{job}</link>.",
|
||||
"storage_template_migration_job": "Posao Migracije Predloška Pohrane",
|
||||
"storage_template_more_details": "Za više pojedinosti o ovoj značajci pogledajte <template-link>Predložak pohrane</template-link> i njegove <implications-link>implikacije</implications-link>",
|
||||
"storage_template_onboarding_description_v2": "Kada je omogućena, ova će značajka automatski organizira datoteke prema predlošku koji je definirao korisnik. Za više informacija pogledajte <link>dokumentaciju</link>.",
|
||||
"storage_template_path_length": "Približno ograničenje duljine putanje: <b>{length, number}</b>/{limit, number}",
|
||||
"storage_template_settings": "Predložak pohrane",
|
||||
"storage_template_settings_description": "Upravljajte strukturom mape i nazivom datoteke učitanog sredstva",
|
||||
@@ -329,6 +358,9 @@
|
||||
"trash_number_of_days_description": "Broj dana za držanje sredstava u smeću prije njihovog trajnog uklanjanja",
|
||||
"trash_settings": "Postavke Smeća",
|
||||
"trash_settings_description": "Upravljanje postavkama smeća",
|
||||
"unlink_all_oauth_accounts": "Odspoji sve OAuth račune",
|
||||
"unlink_all_oauth_accounts_description": "Zapamtite da odspojite sve OAuth račune prije prelaska na novog pružatelja usluge.",
|
||||
"unlink_all_oauth_accounts_prompt": "Jeste li sigurni da želite odspojiti sve OAuth račune? Ovo će resetirati OAuth ID za svakog korisnika i ne može se poništiti.",
|
||||
"user_cleanup_job": "Čišćenje korisnika",
|
||||
"user_delete_delay": "Račun i sredstva korisnika <b>{user}</b> bit će zakazani za trajno brisanje za {delay, plural, one {# day} other {# days}}.",
|
||||
"user_delete_delay_settings": "Brisanje odgode",
|
||||
@@ -355,10 +387,12 @@
|
||||
"admin_password": "Admin lozinka",
|
||||
"administration": "Administracija",
|
||||
"advanced": "Napredno",
|
||||
"advanced_settings_beta_timeline_subtitle": "Isprobaj novo iskustvo aplikacije",
|
||||
"advanced_settings_beta_timeline_title": "Beta vremenska crta",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "Koristite ovu opciju za filtriranje medija tijekom sinkronizacije na temelju alternativnih kriterija. Pokušajte ovo samo ako imate problema s aplikacijom koja ne prepoznaje sve albume.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[EKSPERIMENTALNO] Koristite alternativni filter za sinkronizaciju albuma na uređaju",
|
||||
"advanced_settings_log_level_title": "Razina zapisivanja: {level}",
|
||||
"advanced_settings_prefer_remote_subtitle": "Neki uređaji sporo učitavaju sličice s resursa na uređaju. Aktivirajte ovu postavku kako biste umjesto toga učitali slike s udaljenih izvora.",
|
||||
"advanced_settings_prefer_remote_subtitle": "Neki uređaji sporo učitavaju sličice s lokalnih resursa. Aktivirajte ovu postavku kako biste umjesto toga učitali slike s udaljenih izvora.",
|
||||
"advanced_settings_prefer_remote_title": "Preferiraj udaljene slike",
|
||||
"advanced_settings_proxy_headers_subtitle": "Definirajte zaglavlja posrednika koja Immich treba slati sa svakim mrežnim zahtjevom.",
|
||||
"advanced_settings_proxy_headers_title": "Proxy zaglavlja",
|
||||
@@ -377,6 +411,7 @@
|
||||
"album_cover_updated": "Naslovnica albuma ažurirana",
|
||||
"album_delete_confirmation": "Jeste li sigurni da želite izbrisati album {album}?",
|
||||
"album_delete_confirmation_description": "Ako se ovaj album dijeli, drugi korisnici mu više neće moći pristupiti.",
|
||||
"album_deleted": "Album izbrisan",
|
||||
"album_info_card_backup_album_excluded": "IZUZETO",
|
||||
"album_info_card_backup_album_included": "UKLJUČENO",
|
||||
"album_info_updated": "Podaci o albumu ažurirani",
|
||||
@@ -386,6 +421,7 @@
|
||||
"album_options": "Opcije albuma",
|
||||
"album_remove_user": "Ukloni korisnika?",
|
||||
"album_remove_user_confirmation": "Jeste li sigurni da želite ukloniti {user}?",
|
||||
"album_search_not_found": "Nema albuma koji odgovaraju vašem pretraživanju",
|
||||
"album_share_no_users": "Čini se da ste podijelili ovaj album sa svim korisnicima ili nemate nijednog korisnika s kojim biste ga dijelili.",
|
||||
"album_updated": "Album ažuriran",
|
||||
"album_updated_setting_description": "Primite obavijest e-poštom kada dijeljeni album ima nova sredstva",
|
||||
@@ -405,6 +441,7 @@
|
||||
"albums_default_sort_order": "Zadani redoslijed sortiranja albuma",
|
||||
"albums_default_sort_order_description": "Početni redoslijed sortiranja elemenata prilikom izrade novih albuma.",
|
||||
"albums_feature_description": "Zbirke resursa koje se mogu dijeliti s drugim korisnicima.",
|
||||
"albums_on_device_count": "Albumi na uređaju ({count})",
|
||||
"all": "Sve",
|
||||
"all_albums": "Svi albumi",
|
||||
"all_people": "Svi ljudi",
|
||||
@@ -425,6 +462,7 @@
|
||||
"app_settings": "Postavke Aplikacije",
|
||||
"appears_in": "Pojavljuje se u",
|
||||
"archive": "Arhiva",
|
||||
"archive_action_prompt": "{count} dodano u arhivu",
|
||||
"archive_or_unarchive_photo": "Arhivirajte ili dearhivirajte fotografiju",
|
||||
"archive_page_no_archived_assets": "Nema arhiviranih resursa",
|
||||
"archive_page_title": "Arhiviraj ({count})",
|
||||
@@ -462,10 +500,14 @@
|
||||
"assets": "Sredstva",
|
||||
"assets_added_count": "Dodano {count, plural, one {# asset} other {# assets}}",
|
||||
"assets_added_to_album_count": "Dodano {count, plural, one {# asset} other {# assets}} u album",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural,\n one {Nije moguće dodati medij u album}\n few {Nije moguće dodati # medija u album}\n other {Nije moguće dodati # medija u album}\n}",
|
||||
"assets_added_to_albums_count": "Dodano je {assetTotal} datoteka u {albumTotal} albuma",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {Sadržaj se ne može dodati u album} other {{count} sadržaja se ne mogu dodati u album}}",
|
||||
"assets_cannot_be_added_to_albums": "{count, plural, one {Datoteka se ne može dodati ni u jedan album} few {Datoteke se ne mogu dodati ni u jedan album} other {Datoteka se ne može dodati ni u jedan album}}",
|
||||
"assets_count": "{count, plural, one {# asset} other {# assets}}",
|
||||
"assets_deleted_permanently": "{count} resurs(i) uspješno uklonjeni",
|
||||
"assets_deleted_permanently_from_server": "{count} resurs(i) trajno obrisan(i) sa Immich poslužitelja",
|
||||
"assets_downloaded_failed": "{count, plural, one {Preuzeta # datoteka – {error} datoteka nije uspjela} other {Preuzeto je # datoteka – {error} datoteke nisu uspjele}}",
|
||||
"assets_downloaded_successfully": "{count, plural, one {Uspješno preuzeta # datoteka} other {Uspješno preuzete # datoteke}}",
|
||||
"assets_moved_to_trash_count": "{count, plural, one {# asset} other {# asset}} premješteno u smeće",
|
||||
"assets_permanently_deleted_count": "Trajno izbrisano {count, plural, one {# asset} other {# assets}}",
|
||||
"assets_removed_count": "Uklonjeno {count, plural, one {# asset} other {# assets}}",
|
||||
@@ -477,13 +519,16 @@
|
||||
"assets_trashed_count": "Bačeno u smeće {count, plural, one {# asset} other {# assets}}",
|
||||
"assets_trashed_from_server": "{count} resurs(i) premješten(i) u smeće s Immich poslužitelja",
|
||||
"assets_were_part_of_album_count": "{count, plural, one {Asset was} other {Assets were}} već dio albuma",
|
||||
"assets_were_part_of_albums_count": "{count, plural, one {Datoteka je već bila dio albuma} few {Datoteke su već bile dio albuma} other {Datoteka je već bila dio albuma}}",
|
||||
"authorized_devices": "Ovlašteni Uređaji",
|
||||
"automatic_endpoint_switching_subtitle": "Povežite se lokalno preko naznačene Wi-Fi mreže kada je dostupna i koristite alternativne veze na drugim lokacijama",
|
||||
"automatic_endpoint_switching_title": "Automatsko prebacivanje URL-a",
|
||||
"autoplay_slideshow": "Automatsko prikazivanje slajdova",
|
||||
"back": "Nazad",
|
||||
"back_close_deselect": "Natrag, zatvorite ili poništite odabir",
|
||||
"background_location_permission": "Dozvola za lokaciju u pozadini",
|
||||
"background_location_permission_content": "Kako bi prebacivao mreže dok radi u pozadini, Immich mora *uvijek* imati pristup preciznoj lokaciji kako bi aplikacija mogla pročitati naziv Wi-Fi mreže",
|
||||
"backup": "Sigurnosna kopija",
|
||||
"backup_album_selection_page_albums_device": "Albumi na uređaju ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Dodirnite za uključivanje, dvostruki dodir za isključivanje",
|
||||
"backup_album_selection_page_assets_scatter": "Resursi mogu biti raspoređeni u više albuma. Stoga, albumi mogu biti uključeni ili isključeni tijekom procesa sigurnosnog kopiranja.",
|
||||
@@ -526,7 +571,7 @@
|
||||
"backup_controller_page_id": "ID: {id}",
|
||||
"backup_controller_page_info": "Informacije o sigurnosnom kopiranju",
|
||||
"backup_controller_page_none_selected": "Nema odabranih",
|
||||
"backup_controller_page_remainder": "Podsjetnik",
|
||||
"backup_controller_page_remainder": "Preostalo",
|
||||
"backup_controller_page_remainder_sub": "Preostale fotografije i videozapisi za sigurnosno kopiranje iz odabira",
|
||||
"backup_controller_page_server_storage": "Pohrana na poslužitelju",
|
||||
"backup_controller_page_start_backup": "Pokreni Sigurnosno Kopiranje",
|
||||
@@ -544,9 +589,13 @@
|
||||
"backup_manual_in_progress": "Slanje već u tijeku. Pokšuajte nakon nekog vremena",
|
||||
"backup_manual_success": "Uspijeh",
|
||||
"backup_manual_title": "Status slanja",
|
||||
"backup_options": "Opcije sigurnosne kopije",
|
||||
"backup_options_page_title": "Opcije sigurnosnog kopiranja",
|
||||
"backup_setting_subtitle": "Upravljajte postavkama učitavanja u pozadini i prvom planu",
|
||||
"backup_settings_subtitle": "Upravljaj postavkama slanja",
|
||||
"backward": "Unazad",
|
||||
"beta_sync": "Beta status sinkronizacije",
|
||||
"beta_sync_subtitle": "Upravljaj novim sustavom sinkronizacije",
|
||||
"biometric_auth_enabled": "Biometrijska autentikacija omogućena",
|
||||
"biometric_locked_out": "Zaključani ste iz biometrijske autentikacije",
|
||||
"biometric_no_options": "Nema dostupnih biometrijskih opcija",
|
||||
@@ -564,7 +613,7 @@
|
||||
"cache_settings_clear_cache_button": "Očisti predmemoriju",
|
||||
"cache_settings_clear_cache_button_title": "Briše predmemoriju aplikacije. Ovo će značajno utjecati na performanse aplikacije dok se predmemorija ponovno ne izgradi.",
|
||||
"cache_settings_duplicated_assets_clear_button": "OČISTI",
|
||||
"cache_settings_duplicated_assets_subtitle": "Fotografije i videozapisi koje je aplikacija stavila na crnu listu",
|
||||
"cache_settings_duplicated_assets_subtitle": "Fotografije i videozapisi koje je aplikacija ignorira",
|
||||
"cache_settings_duplicated_assets_title": "Duplicirani resursi ({count})",
|
||||
"cache_settings_statistics_album": "Sličice biblioteke",
|
||||
"cache_settings_statistics_full": "Pune slike",
|
||||
@@ -581,6 +630,7 @@
|
||||
"cancel": "Otkaži",
|
||||
"cancel_search": "Otkaži pretragu",
|
||||
"canceled": "Otkazano",
|
||||
"canceling": "Otkazivanje",
|
||||
"cannot_merge_people": "Nije moguće spojiti osobe",
|
||||
"cannot_undo_this_action": "Ne možete poništiti ovu radnju!",
|
||||
"cannot_update_the_description": "Nije moguće ažurirati opis",
|
||||
@@ -612,6 +662,7 @@
|
||||
"clear": "Očisti",
|
||||
"clear_all": "Očisti sve",
|
||||
"clear_all_recent_searches": "Izbriši sva nedavna pretraživanja",
|
||||
"clear_file_cache": "Očisti predmemoriju datoteka",
|
||||
"clear_message": "Jasna poruka",
|
||||
"clear_value": "Očisti vrijednost",
|
||||
"client_cert_dialog_msg_confirm": "U redu",
|
||||
@@ -644,6 +695,7 @@
|
||||
"confirm_password": "Potvrdite lozinku",
|
||||
"confirm_tag_face": "Želite li označiti ovo lice kao {name}?",
|
||||
"confirm_tag_face_unnamed": "Želite li označiti ovo lice?",
|
||||
"connected_device": "Uređaj povezan",
|
||||
"connected_to": "Povezano s",
|
||||
"contain": "Sadrži",
|
||||
"context": "Kontekst",
|
||||
@@ -681,6 +733,7 @@
|
||||
"create_new_user": "Kreiraj novog korisnika",
|
||||
"create_shared_album_page_share_add_assets": "DODAJ STAVKE",
|
||||
"create_shared_album_page_share_select_photos": "Odaberi fotografije",
|
||||
"create_shared_link": "Kreiraj dijeljeni link",
|
||||
"create_tag": "Stvori oznaku",
|
||||
"create_tag_description": "Napravite novu oznaku. Za ugniježđene oznake unesite punu putanju oznake uključujući kose crte.",
|
||||
"create_user": "Stvori korisnika",
|
||||
@@ -693,9 +746,11 @@
|
||||
"current_server_address": "Trenutna adresa poslužitelja",
|
||||
"custom_locale": "Prilagođena Lokalizacija",
|
||||
"custom_locale_description": "Formatiranje datuma i brojeva na temelju jezika i regije",
|
||||
"custom_url": "Prilagođena URL adresa",
|
||||
"daily_title_text_date": "E, MMM dd",
|
||||
"daily_title_text_date_year": "E, MMM dd, yyyy",
|
||||
"dark": "Tamno",
|
||||
"dark_theme": "Prebaci tamnu temu",
|
||||
"date_after": "Datum nakon",
|
||||
"date_and_time": "Datum i Vrijeme",
|
||||
"date_before": "Datum prije",
|
||||
@@ -703,6 +758,7 @@
|
||||
"date_of_birth_saved": "Datum rođenja uspješno spremljen",
|
||||
"date_range": "Razdoblje",
|
||||
"day": "Dan",
|
||||
"days": "Dani",
|
||||
"deduplicate_all": "Dedupliciraj Sve",
|
||||
"deduplication_criteria_1": "Veličina slike u bajtovima",
|
||||
"deduplication_criteria_2": "Broj EXIF podataka",
|
||||
@@ -711,6 +767,8 @@
|
||||
"default_locale": "Zadana lokalizacija",
|
||||
"default_locale_description": "Oblikujte datume i brojeve na temelju jezika preglednika",
|
||||
"delete": "Izbriši",
|
||||
"delete_action_confirmation_message": "Jeste li sigurni da želite izbrisati ovaj sadržaj? Ova radnja će premjestiti sadržaj u smeće na poslužitelju i upitat će vas želite li ga izbrisati i lokalno",
|
||||
"delete_action_prompt": "{count} izbrisano",
|
||||
"delete_album": "Izbriši album",
|
||||
"delete_api_key_prompt": "Jeste li sigurni da želite izbrisati ovaj API ključ?",
|
||||
"delete_dialog_alert": "Ove stavke bit će trajno izbrisane iz Immicha i s vašeg uređaja",
|
||||
@@ -724,9 +782,12 @@
|
||||
"delete_key": "Ključ za brisanje",
|
||||
"delete_library": "Izbriši knjižnicu",
|
||||
"delete_link": "Izbriši poveznicu",
|
||||
"delete_local_action_prompt": "{count} izbrisano lokalno",
|
||||
"delete_local_dialog_ok_backed_up_only": "Izbriši samo sigurnosno kopirane",
|
||||
"delete_local_dialog_ok_force": "Izbriši svejedno",
|
||||
"delete_others": "Izbriši druge",
|
||||
"delete_permanently": "Izbriši trajno",
|
||||
"delete_permanently_action_prompt": "{count} trajno izbrisano",
|
||||
"delete_shared_link": "Izbriši dijeljenu poveznicu",
|
||||
"delete_shared_link_dialog_title": "Izbriši dijeljenu poveznicu",
|
||||
"delete_tag": "Izbriši oznaku",
|
||||
@@ -737,12 +798,14 @@
|
||||
"description": "Opis",
|
||||
"description_input_hint_text": "Dodaj opis...",
|
||||
"description_input_submit_error": "Pogreška pri ažuriranju opisa, provjerite zapisnik za više detalja",
|
||||
"deselect_all": "Poništi odabir svih",
|
||||
"details": "Detalji",
|
||||
"direction": "Smjer",
|
||||
"disabled": "Onemogućeno",
|
||||
"disallow_edits": "Zabrani izmjene",
|
||||
"discord": "Discord",
|
||||
"discover": "Otkrij",
|
||||
"discovered_devices": "Otkriveni uređaji",
|
||||
"dismiss_all_errors": "Odbaci sve pogreške",
|
||||
"dismiss_error": "Odbaci pogrešku",
|
||||
"display_options": "Mogućnosti prikaza",
|
||||
@@ -753,6 +816,7 @@
|
||||
"documentation": "Dokumentacija",
|
||||
"done": "Gotovo",
|
||||
"download": "Preuzmi",
|
||||
"download_action_prompt": "Preuzimanje {count} sadržaja",
|
||||
"download_canceled": "Preuzimanje otkazano",
|
||||
"download_complete": "Preuzimanje završeno",
|
||||
"download_enqueue": "Preuzimanje dodano u red",
|
||||
@@ -779,8 +843,12 @@
|
||||
"edit": "Izmjena",
|
||||
"edit_album": "Uredi album",
|
||||
"edit_avatar": "Uredi avatar",
|
||||
"edit_birthday": "Izmijeni rođendan",
|
||||
"edit_date": "Uredi datum",
|
||||
"edit_date_and_time": "Uredite datum i vrijeme",
|
||||
"edit_date_and_time_action_prompt": "{count} datuma i vremena uređeno",
|
||||
"edit_date_and_time_by_offset": "Promijeni datum prema pomaku",
|
||||
"edit_date_and_time_by_offset_interval": "Novi raspon datuma: {from} - {to}",
|
||||
"edit_description": "Uredi opis",
|
||||
"edit_description_prompt": "Molimo odaberite novi opis:",
|
||||
"edit_exclusion_pattern": "Uredi uzorak izuzimanja",
|
||||
@@ -790,6 +858,7 @@
|
||||
"edit_key": "Ključ za uređivanje",
|
||||
"edit_link": "Uredi poveznicu",
|
||||
"edit_location": "Uredi lokaciju",
|
||||
"edit_location_action_prompt": "{count} uređenih lokacija",
|
||||
"edit_location_dialog_title": "Lokacija",
|
||||
"edit_name": "Uredi ime",
|
||||
"edit_people": "Uredi ljude",
|
||||
@@ -808,6 +877,7 @@
|
||||
"empty_trash": "Isprazni smeće",
|
||||
"empty_trash_confirmation": "Jeste li sigurni da želite isprazniti smeće? Time će se iz Immicha trajno ukloniti sva sredstva u otpadu.\nNe možete poništiti ovu radnju!",
|
||||
"enable": "Omogući",
|
||||
"enable_backup": "Omogući sigurnosnu kopiju",
|
||||
"enable_biometric_auth_description": "Unesite svoj PIN kod za omogućavanje biometrijske autentikacije",
|
||||
"enabled": "Omogućeno",
|
||||
"end_date": "Datum završetka",
|
||||
@@ -851,6 +921,7 @@
|
||||
"failed_to_load_notifications": "Neuspješno učitavanje obavijesti",
|
||||
"failed_to_load_people": "Učitavanje ljudi nije uspjelo",
|
||||
"failed_to_remove_product_key": "Uklanjanje ključa proizvoda nije uspjelo",
|
||||
"failed_to_reset_pin_code": "Neuspješno resetiranje PIN koda",
|
||||
"failed_to_stack_assets": "Slaganje sredstava nije uspjelo",
|
||||
"failed_to_unstack_assets": "Nije uspjelo uklanjanje snopa sredstava",
|
||||
"failed_to_update_notification_status": "Neuspješno ažuriranje statusa obavijesti",
|
||||
@@ -859,6 +930,7 @@
|
||||
"paths_validation_failed": "{paths, plural, one {# putanja nije prošla} other {# putanje nisu prošle}} provjeru valjanosti",
|
||||
"profile_picture_transparent_pixels": "Profilne slike ne smiju imati prozirne piksele. Povećajte i/ili pomaknite sliku.",
|
||||
"quota_higher_than_disk_size": "Postavili ste kvotu veću od veličine diska",
|
||||
"something_went_wrong": "Nešto je pošlo po zlu",
|
||||
"unable_to_add_album_users": "Nije moguće dodati korisnike u album",
|
||||
"unable_to_add_assets_to_shared_link": "Nije moguće dodati sredstva na dijeljenu poveznicu",
|
||||
"unable_to_add_comment": "Nije moguće dodati komentar",
|
||||
@@ -944,13 +1016,11 @@
|
||||
},
|
||||
"exif": "Exif",
|
||||
"exif_bottom_sheet_description": "Dodaj opis...",
|
||||
"exif_bottom_sheet_description_error": "Pogreška pri ažuriranju opisa",
|
||||
"exif_bottom_sheet_details": "DETALJI",
|
||||
"exif_bottom_sheet_location": "LOKACIJA",
|
||||
"exif_bottom_sheet_people": "OSOBE",
|
||||
"exif_bottom_sheet_person_add_person": "Dodaj ime",
|
||||
"exif_bottom_sheet_person_age_months": "Dob {months} mjeseci",
|
||||
"exif_bottom_sheet_person_age_year_months": "Dob 1 godina, {months} mjeseci",
|
||||
"exif_bottom_sheet_person_age_years": "Dob {years}",
|
||||
"exit_slideshow": "Izađi iz projekcije slideova",
|
||||
"expand_all": "Proširi sve",
|
||||
"experimental_settings_new_asset_list_subtitle": "Rad u tijeku",
|
||||
@@ -964,6 +1034,8 @@
|
||||
"explorer": "Pretraživač (Explorer)",
|
||||
"export": "Izvoz",
|
||||
"export_as_json": "Izvezi kao JSON",
|
||||
"export_database": "Izvezi bazu podataka",
|
||||
"export_database_description": "Izvezi SQLite bazu podataka",
|
||||
"extension": "Proširenje (Extension)",
|
||||
"external": "Vanjski",
|
||||
"external_libraries": "Vanjske Biblioteke",
|
||||
@@ -975,6 +1047,7 @@
|
||||
"failed_to_load_assets": "Neuspjelo učitavanje stavki",
|
||||
"failed_to_load_folder": "Neuspjelo učitavanje mape",
|
||||
"favorite": "Omiljeno",
|
||||
"favorite_action_prompt": "{count} dodano u Omiljeno",
|
||||
"favorite_or_unfavorite_photo": "Omiljena ili neomiljena fotografija",
|
||||
"favorites": "Omiljene",
|
||||
"favorites_page_no_favorites": "Nema pronađenih omiljenih stavki",
|
||||
@@ -989,11 +1062,13 @@
|
||||
"filter_people": "Filtrirajte ljude",
|
||||
"filter_places": "Filtriraj mjesta",
|
||||
"find_them_fast": "Pronađite ih brzo po imenu pomoću pretraživanja",
|
||||
"first": "Prvi",
|
||||
"fix_incorrect_match": "Ispravite netočno podudaranje",
|
||||
"folder": "Mapa",
|
||||
"folder_not_found": "Mapa nije pronađena",
|
||||
"folders": "Mape",
|
||||
"folders_feature_description": "Pregledavanje prikaza mape za fotografije i videozapise u sustavu datoteka",
|
||||
"forgot_pin_code_question": "Zaboravili ste svoj PIN?",
|
||||
"forward": "Naprijed",
|
||||
"gcast_enabled": "Google Cast",
|
||||
"gcast_enabled_description": "Ova značajka učitava vanjske resurse s Googlea kako bi radila.",
|
||||
@@ -1014,6 +1089,9 @@
|
||||
"haptic_feedback_switch": "Omogući haptičku povratnu informaciju",
|
||||
"haptic_feedback_title": "Haptička povratna informacija",
|
||||
"has_quota": "Ima kvotu",
|
||||
"hash_asset": "Hash sadržaja",
|
||||
"hashed_assets": "Hashirani sadržaji",
|
||||
"hashing": "Hashiranje",
|
||||
"header_settings_add_header_tip": "Dodaj zaglavlje",
|
||||
"header_settings_field_validator_msg": "Vrijednost ne može biti prazna",
|
||||
"header_settings_header_name_input": "Naziv zaglavlja",
|
||||
@@ -1045,7 +1123,9 @@
|
||||
"home_page_upload_err_limit": "Moguće je prenijeti najviše 30 stavki odjednom, preskačem",
|
||||
"host": "Domaćin",
|
||||
"hour": "Sat",
|
||||
"hours": "Sati",
|
||||
"id": "ID",
|
||||
"idle": "Neaktivan",
|
||||
"ignore_icloud_photos": "Ignoriraj iCloud fotografije",
|
||||
"ignore_icloud_photos_description": "Fotografije pohranjene na iCloudu neće biti učitane na Immich poslužitelj",
|
||||
"image": "Slika",
|
||||
@@ -1099,11 +1179,17 @@
|
||||
"kept_this_deleted_others": "Zadržana je ova datoteka i izbrisano {count, plural, one {# datoteka} other {# datoteka}}",
|
||||
"keyboard_shortcuts": "Prečaci tipkovnice",
|
||||
"language": "Jezik",
|
||||
"language_no_results_subtitle": "Pokušajte prilagoditi pojam za pretraživanje",
|
||||
"language_no_results_title": "Nisu pronađeni jezici",
|
||||
"language_search_hint": "Pretraži jezike...",
|
||||
"language_setting_description": "Odaberite željeni jezik",
|
||||
"large_files": "Velike datoteke",
|
||||
"last": "Zadnji",
|
||||
"last_seen": "Zadnji put viđen",
|
||||
"latest_version": "Najnovija verzija",
|
||||
"latitude": "Zemljopisna širina",
|
||||
"leave": "Izađi",
|
||||
"leave_album": "Napusti album",
|
||||
"lens_model": "Model objektiva",
|
||||
"let_others_respond": "Dozvoli da drugi odgovore",
|
||||
"level": "Razina",
|
||||
@@ -1115,15 +1201,19 @@
|
||||
"library_page_sort_created": "Datum kreiranja",
|
||||
"library_page_sort_last_modified": "Zadnja izmjena",
|
||||
"library_page_sort_title": "Naslov albuma",
|
||||
"licenses": "Licence",
|
||||
"light": "Svjetlo",
|
||||
"like": "Sviđa mi se",
|
||||
"like_deleted": "Like izbrisan",
|
||||
"link_motion_video": "Povežite videozapis pokreta",
|
||||
"link_options": "Opcije veze",
|
||||
"link_to_oauth": "Veza na OAuth",
|
||||
"linked_oauth_account": "Povezani OAuth račun",
|
||||
"list": "Popis",
|
||||
"loading": "Učitavanje",
|
||||
"loading_search_results_failed": "Učitavanje rezultata pretraživanja nije uspjelo",
|
||||
"local": "Lokalno",
|
||||
"local_asset_cast_failed": "Nije moguće reproducirati sadržaj koji nije prenesen na poslužitelj",
|
||||
"local_assets": "Lokalni sadržaji",
|
||||
"local_network": "Lokalna mreža",
|
||||
"local_network_sheet_info": "Aplikacija će se povezati s poslužiteljem putem ovog URL-a kada koristi određenu Wi-Fi mrežu",
|
||||
"location_permission": "Dozvola za lokaciju",
|
||||
@@ -1137,13 +1227,14 @@
|
||||
"locked_folder": "Zaključana Mapa",
|
||||
"log_out": "Odjavi se",
|
||||
"log_out_all_devices": "Odjava sa svih uređaja",
|
||||
"logged_in_as": "Prijavljeni kao {user}",
|
||||
"logged_out_all_devices": "Odjavljeni su svi uređaji",
|
||||
"logged_out_device": "Odjavljen uređaj",
|
||||
"login": "Prijava",
|
||||
"login_disabled": "Prijava je onemogućena",
|
||||
"login_form_api_exception": "API iznimka. Provjerite URL poslužitelja i pokušajte ponovno.",
|
||||
"login_form_back_button_text": "Nazad",
|
||||
"login_form_email_hint": "vasaemaiadresal@email.com",
|
||||
"login_form_email_hint": "vasaemailadresa@email.com",
|
||||
"login_form_endpoint_hint": "http://vaš-server-ip:port",
|
||||
"login_form_endpoint_url": "URL krajnje točke poslužitelja",
|
||||
"login_form_err_http": "Molimo navedite http:// ili https://",
|
||||
@@ -1179,8 +1270,7 @@
|
||||
"manage_your_devices": "Upravljajte uređajima na kojima ste prijavljeni",
|
||||
"manage_your_oauth_connection": "Upravljajte svojom OAuth vezom",
|
||||
"map": "Karta",
|
||||
"map_assets_in_bound": "{count} fotografija",
|
||||
"map_assets_in_bounds": "{count} fotografija",
|
||||
"map_assets_in_bounds": "{count, plural, =0 {Nema fotografija na ovom području} one {# fotografija} few {#fotografije} other {# fotografija}}",
|
||||
"map_cannot_get_user_location": "Nije moguće dohvatiti lokaciju korisnika",
|
||||
"map_location_dialog_yes": "Da",
|
||||
"map_location_picker_page_use_location": "Koristi ovu lokaciju",
|
||||
@@ -1188,7 +1278,6 @@
|
||||
"map_location_service_disabled_title": "Usluga lokacije onemogućena",
|
||||
"map_marker_for_images": "Oznaka karte za slike snimljene u {city}, {country}",
|
||||
"map_marker_with_image": "Oznaka karte sa slikom",
|
||||
"map_no_assets_in_bounds": "Nema fotografija u ovom području",
|
||||
"map_no_location_permission_content": "Potrebno je dopuštenje za lokaciju kako bi se prikazale stavke s vaše trenutne lokacije. Želite li ga sada omogućiti?",
|
||||
"map_no_location_permission_title": "Dopuštenje za lokaciju odbijeno",
|
||||
"map_settings": "Postavke karte",
|
||||
@@ -1225,6 +1314,7 @@
|
||||
"merged_people_count": "{count, plural, one {# Spojena osoba} other {# Spojene osobe}}",
|
||||
"minimize": "Minimiziraj",
|
||||
"minute": "Minuta",
|
||||
"minutes": "Minute",
|
||||
"missing": "Nedostaje",
|
||||
"model": "Model",
|
||||
"month": "Mjesec",
|
||||
@@ -1232,6 +1322,7 @@
|
||||
"more": "Više",
|
||||
"move": "Pomakni",
|
||||
"move_off_locked_folder": "Premjesti iz zaključane mape",
|
||||
"move_to_lock_folder_action_prompt": "{count} dodano u zaključanu mapu",
|
||||
"move_to_locked_folder": "Premjesti u zaključanu mapu",
|
||||
"move_to_locked_folder_confirmation": "Ove fotografije i videozapis bit će uklonjeni iz svih albuma i bit će vidljivi samo iz zaključane mape",
|
||||
"moved_to_archive": "Premješteno {count, plural, one {# resurs} other {# resursa}} u arhivu",
|
||||
@@ -1243,6 +1334,9 @@
|
||||
"my_albums": "Moji albumi",
|
||||
"name": "Ime",
|
||||
"name_or_nickname": "Ime ili nadimak",
|
||||
"network_requirement_photos_upload": "Koristi mobilne podatke za sigurnosno kopiranje fotografija",
|
||||
"network_requirement_videos_upload": "Koristi mobilne podatke za sigurnosno kopiranje videozapisa",
|
||||
"network_requirements_updated": "Zahtjevi za mrežu su se promijenili, red za sigurnosno kopiranje se resetira",
|
||||
"networking_settings": "Umrežavanje",
|
||||
"networking_subtitle": "Upravljajte postavkama krajnje točke poslužitelja",
|
||||
"never": "Nikada",
|
||||
@@ -1264,6 +1358,7 @@
|
||||
"no_archived_assets_message": "Arhivirajte fotografije i videozapise kako biste ih sakrili iz prikaza fotografija",
|
||||
"no_assets_message": "KLIKNITE DA PRENESETE SVOJU PRVU FOTOGRAFIJU",
|
||||
"no_assets_to_show": "Nema stavki za prikaz",
|
||||
"no_cast_devices_found": "Nisu pronađeni uređaji za reprodukciju",
|
||||
"no_duplicates_found": "Nisu pronađeni duplikati.",
|
||||
"no_exif_info_available": "Nema dostupnih exif podataka",
|
||||
"no_explore_results_message": "Prenesite više fotografija da istražite svoju zbirku.",
|
||||
@@ -1277,6 +1372,7 @@
|
||||
"no_results": "Nema rezultata",
|
||||
"no_results_description": "Pokušajte sa sinonimom ili općenitijom ključnom riječi",
|
||||
"no_shared_albums_message": "Stvorite album za dijeljenje fotografija i videozapisa s osobama u svojoj mreži",
|
||||
"no_uploads_in_progress": "Nema aktivnih prijenosa",
|
||||
"not_in_any_album": "Ni u jednom albumu",
|
||||
"not_selected": "Nije odabrano",
|
||||
"note_apply_storage_label_to_previously_uploaded assets": "Napomena: Da biste primijenili Oznaku za skladištenje na prethodno prenesena sredstva, pokrenite",
|
||||
@@ -1292,12 +1388,16 @@
|
||||
"oauth": "OAuth",
|
||||
"official_immich_resources": "Službeni Immich resursi",
|
||||
"offline": "Izvan mreže",
|
||||
"offset": "Pomak",
|
||||
"ok": "Ok",
|
||||
"oldest_first": "Prvo najstarije",
|
||||
"on_this_device": "Na ovom uređaju",
|
||||
"onboarding": "Uključivanje (Onboarding)",
|
||||
"onboarding_privacy_description": "Sljedeće (neobavezne) značajke oslanjaju se na vanjske usluge i mogu se onemogućiti u bilo kojem trenutku u postavkama administracije.",
|
||||
"onboarding_locale_description": "Odaberite željeni jezik. Kasnije ga možete promijeniti u postavkama.",
|
||||
"onboarding_privacy_description": "Sljedeće (neobavezne) značajke oslanjaju se na vanjske usluge i mogu se onemogućiti u bilo kojem trenutku u postavkama.",
|
||||
"onboarding_server_welcome_description": "Postavimo vašu instancu s nekim uobičajenim postavkama.",
|
||||
"onboarding_theme_description": "Odaberite temu boja za svoj primjer. To možete kasnije promijeniti u postavkama.",
|
||||
"onboarding_user_welcome_description": "Počnimo!",
|
||||
"onboarding_welcome_user": "Dobro došli, {user}",
|
||||
"online": "Dostupan (Online)",
|
||||
"only_favorites": "Samo omiljeno",
|
||||
@@ -1311,6 +1411,7 @@
|
||||
"original": "originalno",
|
||||
"other": "Ostalo",
|
||||
"other_devices": "Ostali uređaji",
|
||||
"other_entities": "Ostali entiteti",
|
||||
"other_variables": "Ostale varijable",
|
||||
"owned": "Vlasništvo",
|
||||
"owner": "Vlasnik",
|
||||
@@ -1365,6 +1466,9 @@
|
||||
"permission_onboarding_permission_limited": "Dopuštenje ograničeno. Da biste Immichu dopustili sigurnosno kopiranje i upravljanje cijelom galerijom, dodijelite dopuštenja za fotografije i videozapise u Postavkama.",
|
||||
"permission_onboarding_request": "Immich zahtijeva dopuštenje za pregled vaših fotografija i videozapisa.",
|
||||
"person": "Osoba",
|
||||
"person_age_months": "{months, plural, one {# mjesec} few {# mjeseca} other {# mjeseci}} staro",
|
||||
"person_age_year_months": "1 godina, {months, plural, one {# mjesec} few {# mjeseca} other {# mjeseci}} staro",
|
||||
"person_age_years": "{years, plural, few {# godine} other {# godina}} staro",
|
||||
"person_birthdate": "Rođen/a {date}",
|
||||
"person_hidden": "{name}{hidden, select, true { (skriveno)} other {}}",
|
||||
"photo_shared_all_users": "Čini se da ste svoje fotografije podijelili sa svim korisnicima ili nemate nijednog korisnika s kojim biste ih podijelili.",
|
||||
@@ -1442,6 +1546,7 @@
|
||||
"purchase_server_description_2": "Status podupiratelja",
|
||||
"purchase_server_title": "Poslužitelj (Server)",
|
||||
"purchase_settings_server_activated": "Ključem proizvoda poslužitelja upravlja administrator",
|
||||
"queue_status": "Stavljanje u red {count}/{total}",
|
||||
"rating": "Broj zvjezdica",
|
||||
"rating_clear": "Obriši ocjenu",
|
||||
"rating_count": "{count, plural, one {# zvijezda} other {# zvijezde}}",
|
||||
@@ -1470,6 +1575,8 @@
|
||||
"refreshing_faces": "Osvježavanje lica",
|
||||
"refreshing_metadata": "Osvježavanje metapodataka",
|
||||
"regenerating_thumbnails": "Obnavljanje sličica",
|
||||
"remote": "Udaljeno",
|
||||
"remote_assets": "Udaljeni sadržaji",
|
||||
"remove": "Ukloni",
|
||||
"remove_assets_album_confirmation": "Jeste li sigurni da želite ukloniti {count, plural, one {# datoteku} other {# datoteke}} iz albuma?",
|
||||
"remove_assets_shared_link_confirmation": "Jeste li sigurni da želite ukloniti {count, plural, one {# datoteku} other {# datoteke}} iz ove dijeljene veze?",
|
||||
@@ -1477,12 +1584,15 @@
|
||||
"remove_custom_date_range": "Ukloni prilagođeni datumski raspon",
|
||||
"remove_deleted_assets": "Ukloni izbrisana sredstva",
|
||||
"remove_from_album": "Ukloni iz albuma",
|
||||
"remove_from_album_action_prompt": "{count} uklonjeno iz albuma",
|
||||
"remove_from_favorites": "Ukloni iz favorita",
|
||||
"remove_from_lock_folder_action_prompt": "{count} uklonjeno iz zaključane mape",
|
||||
"remove_from_locked_folder": "Ukloni iz zaključane mape",
|
||||
"remove_from_locked_folder_confirmation": "Jeste li sigurni da želite premjestiti ove fotografije i videozapise iz zaključane mape? Bit će vidljivi u vašoj biblioteci.",
|
||||
"remove_from_shared_link": "Ukloni iz dijeljene poveznice",
|
||||
"remove_memory": "Ukloni uspomenu",
|
||||
"remove_photo_from_memory": "Ukloni fotografiju iz ove uspomene",
|
||||
"remove_tag": "Ukloni oznaku",
|
||||
"remove_url": "Ukloni URL",
|
||||
"remove_user": "Ukloni korisnika",
|
||||
"removed_api_key": "Uklonjen API ključ: {name}",
|
||||
@@ -1504,19 +1614,28 @@
|
||||
"reset_password": "Resetiraj lozinku",
|
||||
"reset_people_visibility": "Poništi vidljivost ljudi",
|
||||
"reset_pin_code": "Resetiraj PIN kod",
|
||||
"reset_pin_code_description": "Ako ste zaboravili svoj PIN kod, možete kontaktirati administratora poslužitelja da ga resetira",
|
||||
"reset_pin_code_success": "PIN kod je uspješno resetiran",
|
||||
"reset_pin_code_with_password": "Uvijek možete resetirati svoj PIN kod pomoću svoje lozinke",
|
||||
"reset_sqlite": "Resetiraj SQLite bazu podataka",
|
||||
"reset_sqlite_confirmation": "Jeste li sigurni da želite resetirati SQLite bazu podataka? Morat ćete se odjaviti i ponovno prijaviti kako biste ponovno sinkronizirali podatke",
|
||||
"reset_sqlite_success": "SQLite baza podataka je uspješno resetirana",
|
||||
"reset_to_default": "Vrati na zadano",
|
||||
"resolve_duplicates": "Riješite duplikate",
|
||||
"resolved_all_duplicates": "Razriješi sve duplikate",
|
||||
"restore": "Oporavi",
|
||||
"restore_all": "Oporavi sve",
|
||||
"restore_trash_action_prompt": "{count} vraćeno iz smeća",
|
||||
"restore_user": "Vrati korisnika",
|
||||
"restored_asset": "Obnovljena datoteka",
|
||||
"resume": "Nastavi",
|
||||
"retry_upload": "Ponovi prijenos",
|
||||
"review_duplicates": "Pregledajte duplikate",
|
||||
"review_large_files": "Pregledaj velike datoteke",
|
||||
"role": "Uloga",
|
||||
"role_editor": "Urednik",
|
||||
"role_viewer": "Gledatelj",
|
||||
"running": "U tijeku",
|
||||
"save": "Spremi",
|
||||
"save_to_gallery": "Spremi u galeriju",
|
||||
"saved_api_key": "Spremljen API ključ",
|
||||
@@ -1589,6 +1708,7 @@
|
||||
"select_album_cover": "Odaberite omot albuma",
|
||||
"select_all": "Odaberi sve",
|
||||
"select_all_duplicates": "Odaberi sve duplikate",
|
||||
"select_all_in": "Odaberi sve u {group}",
|
||||
"select_avatar_color": "Odaberi boju avatara",
|
||||
"select_face": "Odaberi lice",
|
||||
"select_featured_photo": "Odaberi istaknutu fotografiju",
|
||||
@@ -1609,6 +1729,7 @@
|
||||
"server_info_box_server_url": "URL poslužitelja",
|
||||
"server_offline": "Server izvan mreže",
|
||||
"server_online": "Server na mreži",
|
||||
"server_privacy": "Privatnost poslužitelja",
|
||||
"server_stats": "Statistike servera",
|
||||
"server_version": "Verzija servera",
|
||||
"set": "Postavi",
|
||||
@@ -1618,6 +1739,7 @@
|
||||
"set_date_of_birth": "Postavi datum rođenja",
|
||||
"set_profile_picture": "Postavi profilnu sliku",
|
||||
"set_slideshow_to_fullscreen": "Postavi prezentaciju na cijeli zaslon",
|
||||
"set_stack_primary_asset": "Postavi kao glavni sadržaj",
|
||||
"setting_image_viewer_help": "Preglednik detalja prvo učitava malu sličicu, zatim učitava pregled srednje veličine (ako je omogućen), te na kraju učitava original (ako je omogućen).",
|
||||
"setting_image_viewer_original_subtitle": "Omogućite za učitavanje originalne slike pune rezolucije (velika!). Onemogućite za smanjenje potrošnje podataka (i mrežne i na predmemoriji uređaja).",
|
||||
"setting_image_viewer_original_title": "Učitaj originalnu sliku",
|
||||
@@ -1645,6 +1767,7 @@
|
||||
"settings_saved": "Postavke su spremljene",
|
||||
"setup_pin_code": "Postavi PIN kod",
|
||||
"share": "Podijeli",
|
||||
"share_action_prompt": "Podijeljeno {count} sadržaja",
|
||||
"share_add_photos": "Dodaj fotografije",
|
||||
"share_assets_selected": "{count} odabrano",
|
||||
"share_dialog_preparing": "Priprema...",
|
||||
@@ -1666,6 +1789,7 @@
|
||||
"shared_link_clipboard_copied_massage": "Kopirano u međuspremnik",
|
||||
"shared_link_clipboard_text": "Poveznica: {link}\nLozinka: {password}",
|
||||
"shared_link_create_error": "Pogreška pri kreiranju dijeljene poveznice",
|
||||
"shared_link_custom_url_description": "Pristupite ovom dijeljenom linku pomoću prilagođene URL adrese",
|
||||
"shared_link_edit_description_hint": "Unesite opis dijeljenja",
|
||||
"shared_link_edit_expire_after_option_day": "1 dan",
|
||||
"shared_link_edit_expire_after_option_days": "{count} dana",
|
||||
@@ -1691,6 +1815,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "Upravljanje dijeljenim poveznicama",
|
||||
"shared_link_options": "Opcije dijeljene poveznice",
|
||||
"shared_link_password_description": "Zahtjevaj loziku za pristup ovom dijeljenom linku",
|
||||
"shared_links": "Dijeljene poveznice",
|
||||
"shared_links_description": "Podijelite fotografije i videozapise putem poveznice",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, =1 {# podijeljena fotografija ili videozapis.} few {# podijeljene fotografije i videozapisa.} other {# podijeljenih fotografija i videozapisa.}}",
|
||||
@@ -1740,12 +1865,14 @@
|
||||
"sort_created": "Datum kreiranja",
|
||||
"sort_items": "Broj stavki",
|
||||
"sort_modified": "Datum izmjene",
|
||||
"sort_newest": "Najnovija fotografija",
|
||||
"sort_oldest": "Najstarija fotografija",
|
||||
"sort_people_by_similarity": "Sortiraj osobe po sličnosti",
|
||||
"sort_recent": "Najnovija fotografija",
|
||||
"sort_title": "Naslov",
|
||||
"source": "Izvor",
|
||||
"stack": "Složi",
|
||||
"stack_action_prompt": "{count} složeno",
|
||||
"stack_duplicates": "Složi duplikate",
|
||||
"stack_select_one_photo": "Odaberi jednu glavnu fotografiju za slaganje",
|
||||
"stack_selected_photos": "Složi odabrane fotografije",
|
||||
@@ -1755,6 +1882,7 @@
|
||||
"start_date": "Datum početka",
|
||||
"state": "Stanje",
|
||||
"status": "Status",
|
||||
"stop_casting": "Zaustavi reprodukciju",
|
||||
"stop_motion_photo": "Zaustavi pokretnu fotografiju",
|
||||
"stop_photo_sharing": "Prestati dijeliti svoje fotografije?",
|
||||
"stop_photo_sharing_description": "{partner} više neće moći pristupiti vašim fotografijama.",
|
||||
@@ -1764,6 +1892,7 @@
|
||||
"storage_quota": "Kvota Pohrane",
|
||||
"storage_usage": "{used} od {available} iskorišteno",
|
||||
"submit": "Pošalji",
|
||||
"success": "Uspijeh",
|
||||
"suggestions": "Prijedlozi",
|
||||
"sunrise_on_the_beach": "Izlazak sunca na plaži",
|
||||
"support": "Podrška",
|
||||
@@ -1773,6 +1902,8 @@
|
||||
"sync": "Sink.",
|
||||
"sync_albums": "Sinkroniziraj albume",
|
||||
"sync_albums_manual_subtitle": "Sinkroniziraj sve prenesene videozapise i fotografije u odabrane albume za sigurnosnu kopiju",
|
||||
"sync_local": "Sinkroniziraj lokalno",
|
||||
"sync_remote": "Sinkroniziraj udaljeno",
|
||||
"sync_upload_album_setting_subtitle": "Kreiraj i prenesi svoje fotografije i videozapise u odabrane albume na Immichu",
|
||||
"tag": "Oznaka",
|
||||
"tag_assets": "Označi stavke",
|
||||
@@ -1783,6 +1914,7 @@
|
||||
"tag_updated": "Ažurirana oznaka: {tag}",
|
||||
"tagged_assets": "Označena {count, plural, =1 {# stavka} few {# stavke} other {# stavki}}",
|
||||
"tags": "Oznake",
|
||||
"tap_to_run_job": "Dodirnite za pokretanje zadatka",
|
||||
"template": "Predložak",
|
||||
"theme": "Tema",
|
||||
"theme_selection": "Izbor teme",
|
||||
@@ -1815,6 +1947,7 @@
|
||||
"total": "Ukupno",
|
||||
"total_usage": "Ukupna upotreba",
|
||||
"trash": "Smeće",
|
||||
"trash_action_prompt": "{count} premješteno u smeće",
|
||||
"trash_all": "Stavi sve u smeće",
|
||||
"trash_count": "Smeće {count, number}",
|
||||
"trash_delete_asset": "Premjesti u smeće / Izbriši stavku",
|
||||
@@ -1832,8 +1965,11 @@
|
||||
"unable_to_change_pin_code": "Nije moguće promijeniti PIN kod",
|
||||
"unable_to_setup_pin_code": "Nije moguće postaviti PIN kod",
|
||||
"unarchive": "Poništi arhiviranje",
|
||||
"unarchive_action_prompt": "{count} uklonjeno iz arhive",
|
||||
"unarchived_count": "{count, plural, =1 {Poništeno arhiviranje #} few {Poništeno arhiviranje #} other {Poništeno arhiviranje #}}",
|
||||
"undo": "Poništi",
|
||||
"unfavorite": "Ukloni iz omiljenih",
|
||||
"unfavorite_action_prompt": "{count} uklonjeno iz favorita",
|
||||
"unhide_person": "Prikaži osobu",
|
||||
"unknown": "Nepoznato",
|
||||
"unknown_country": "Nepoznata država",
|
||||
@@ -1849,16 +1985,22 @@
|
||||
"unsaved_change": "Nespremljena promjena",
|
||||
"unselect_all": "Poništi odabir svih",
|
||||
"unselect_all_duplicates": "Poništi odabir svih duplikata",
|
||||
"unselect_all_in": "Poništi odabir svih u {group}",
|
||||
"unstack": "Razdvoji",
|
||||
"unstack_action_prompt": "{count} razloženo",
|
||||
"unstacked_assets_count": "Razdvojena {count, plural, =1 {# stavka} few {# stavke} other {# stavki}}",
|
||||
"untagged": "Bez oznaka",
|
||||
"up_next": "Sljedeće",
|
||||
"updated_at": "Ažurirano",
|
||||
"updated_password": "Lozinka ažurirana",
|
||||
"upload": "Prijenos",
|
||||
"upload_action_prompt": "{count} u redu za prijenos",
|
||||
"upload_concurrency": "Istovremeni prijenosi",
|
||||
"upload_details": "Detalji prijenosa",
|
||||
"upload_dialog_info": "Želite li sigurnosno kopirati odabranu stavku(e) na poslužitelj?",
|
||||
"upload_dialog_title": "Prenesi stavku",
|
||||
"upload_errors": "Prijenos završen s {count, plural, =1 {# greškom} few {# greške} other {# grešaka}}, osvježite stranicu da biste vidjeli nove prenesene stavke.",
|
||||
"upload_finished": "Prijenos završen",
|
||||
"upload_progress": "Preostalo {remaining, number} - Obrađeno {processed, number}/{total, number}",
|
||||
"upload_skipped_duplicates": "Preskočena {count, plural, =1 {# duplicirana stavka} few {# duplicirane stavke} other {# dupliciranih stavki}}",
|
||||
"upload_status_duplicates": "Duplikati",
|
||||
@@ -1867,6 +2009,7 @@
|
||||
"upload_success": "Prijenos uspješan, osvježite stranicu da biste vidjeli nove prenesene stavke.",
|
||||
"upload_to_immich": "Prenesi na Immich ({count})",
|
||||
"uploading": "Prijenos u tijeku",
|
||||
"uploading_media": "Prijenos medija",
|
||||
"url": "URL",
|
||||
"usage": "Korištenje",
|
||||
"use_biometric": "Koristi biometriju",
|
||||
@@ -1878,6 +2021,7 @@
|
||||
"user_liked": "{user} je označio/la sviđa mi se {type, select, photo {ovu fotografiju} video {ovaj videozapis} asset {ovu stavku} other {to}}",
|
||||
"user_pin_code_settings": "PIN kod",
|
||||
"user_pin_code_settings_description": "Upravljajte svojim PIN kodom",
|
||||
"user_privacy": "Privatnost korisnika",
|
||||
"user_purchase_settings": "Kupnja",
|
||||
"user_purchase_settings_description": "Upravljajte svojom kupnjom",
|
||||
"user_role_set": "Postavi {user} kao {role}",
|
||||
@@ -1886,6 +2030,7 @@
|
||||
"user_usage_stats_description": "Pregledajte statistiku korištenja računa",
|
||||
"username": "Korisničko ime",
|
||||
"users": "Korisnici",
|
||||
"users_added_to_album_count": "Dodan{o/a} {count, plural, one {# korisnik} few {# korisnika} other {# korisnika}} u album",
|
||||
"utilities": "Alati",
|
||||
"validate": "Provjeri valjanost",
|
||||
"validate_endpoint_error": "Molimo unesite valjanu URL adresu",
|
||||
@@ -1904,6 +2049,7 @@
|
||||
"view_album": "Prikaži album",
|
||||
"view_all": "Prikaži sve",
|
||||
"view_all_users": "Prikaži sve korisnike",
|
||||
"view_details": "Prikaži pojedinosti",
|
||||
"view_in_timeline": "Prikaži na vremenskoj crti",
|
||||
"view_link": "Prikaži poveznicu",
|
||||
"view_links": "Prikaži poveznice",
|
||||
|
||||